Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-06UI: New modifier Icons Envelope and OutlineAntonio Vazquez
Task: T101155 Designed by: Matias Mendiola Reviewed by : Pablo Vazquez
2022-09-28Bump submodule versionsSebastian Parborg
2022-09-14Cleanup: remove redundant braces from assert & raiseCampbell Barton
autopep8 v1.7 added a space after assert & raise, remove the braces as they aren't needed.
2022-09-02BLF: Replacement of Hebrew FontHarley Acheson
Replacement of our Hebrew font, which has bad variable weight default. See D15846 for more details. Differential Revision: https://developer.blender.org/D15846 Reviewed by Brecht Van Lommel
2022-08-31Fix submodule refsJoseph Eagar
2022-08-31Merge branch 'blender-v3.3-release'Joseph Eagar
2022-08-30Attributes: Improve custom data initialization optionsHans Goudey
When allocating new `CustomData` layers, often we do redundant initialization of arrays. For example, it's common that values are allocated, set to their default value, and then set to some other value. This is wasteful, and it negates the benefits of optimizations to the allocator like D15082. There are two reasons for this. The first is array-of-structs storage that makes it annoying to initialize values manually, and the second is confusing options in the Custom Data API. This patch addresses the latter. The `CustomData` "alloc type" options are rearranged. Now, besides the options that use existing layers, there are two remaining: * `CD_SET_DEFAULT` sets the default value. * Usually zeroes, but for colors this is white (how it was before). * Should be used when you add the layer but don't set all values. * `CD_CONSTRUCT` refers to the "default construct" C++ term. * Only necessary or defined for non-trivial types like vertex groups. * Doesn't do anything for trivial types like `int` or `float3`. * Should be used every other time, when all values will be set. The attribute API's `AttributeInit` types are updated as well. To update code, replace `CD_CALLOC` with `CD_SET_DEFAULT` and `CD_DEFAULT` with `CD_CONSTRUCT`. This doesn't cause any functional changes yet. Follow-up commits will change to avoid initializing new layers where the correctness is clear. Differential Revision: https://developer.blender.org/D15617
2022-08-29Cycles: Remove "return" and "assert" from oneAPI kernel codeNikita Sirgienko
2022-08-18Fix T100423: Addon's custom context menu entries get overridden by other addonsLuca Rood
This introduces a new `UI_MT_button_context_menu` class which is registered at startup. Addons can append/prepend draw functions to this class, in order to add their custom context menu entries. The new class replaces the old `WM_MT_button_context` class, thus requiring a small change in addons using this feature. This is done because addons were previously required to register the class themselves, which caused addons to override each other's context menu entries. Now the class registration is handled by Blender, and addons need only append their draw functions. The new class name ensures that addons using the old method don't override menu entries made using the new class. Menu entries added with the legacy `WM_MT_button_context` class are still drawn for backwards compatibility, but this class must not be used going forward, as any addon using it still runs the risk of having its menu entries overridden, and support for the legacy class is subject to removal in a future version. Reviewed By: campbellbarton Maniphest Tasks: T100423 Differential Revision: https://developer.blender.org/D15702
2022-08-06BLF: Remove Unwanted Font FileHarley Acheson
Remove "Material Icons" font file, mistakenly added. See D15627 for details Differential Revision: https://developer.blender.org/D15627 Reviewed by Brecht Van Lommel
2022-07-29BLF: New Font Stack for Better Language CoverageHarley Acheson
Replace our existing two fonts with a stack of new fonts to increase and improve language coverage and to add many new symbols and icons. Covers glyphs of top 44 languages - 1.5 billion more potential users. See D10887 for lots of details. Differential Revision: https://developer.blender.org/D10887 Reviewed by Brecht Van Lommel
2022-07-27Revert "Blender 3.3 splashscreen"Thomas Dinges
This reverts commit d61ab45385eba116dbfcbf6c5ccfb997be7e324f.
2022-07-27Blender 3.3 splashscreenThomas Dinges
Credits: Piotr Krynski
2022-07-18Subdiv: remove unused GPU device choice, fix crash with libepoxy on initBrecht Van Lommel
openSubdiv_init() would detect available evaluators before any OpenGL context exists, causing a crash with libepoxy. This test however is redundant as we already check the requirements on the Blender side through the GPU API. To simplify things, completely remove the device detection in the opensubdiv module and reduce the evaluators to just CPU and GPU. The plan here is to move to the GPU module abstraction over OpenGL/Metal/Vulkan and so all these different backends no longer make sense. This also removes the user preference for OpenSubdiv compute device, which was not used for the new GPU subdivision implementation. Ref D15291 Differential Revision: https://developer.blender.org/D15470
2022-07-17Sculpt: Fix scene spacing mode (phase 1)Joseph Eagar
The scene spacing code was failing to check if a raycast failed, which can happen when sculpting the edges of objects in negative mode. Note I removed what I suspect was a hack put in to fix this, spacing was clamped to 0.001 scene units. Scene spacing mode is actually quite broken, so it will be fixed in a series of phases.
2022-07-16Audaspace: minor formatting fix for last commit.Jörg Müller
2022-07-11GPU: add BUIDTIME to WITH_GPU_SHADER_BUILDERJeroen Bakker
Adds a better name that describes when it is used. The GPU_SHADER_BUILDER is a buildtime tool for developers to pre-validate GLSL (and in the overseen future pre-compile to SpirV). We don't see that this needs to become a required step in the future so WITH_GPU_BUILDTIME_SHADER_BUILDER is more descriptive name.
2022-07-06Icons: Add each icon to a named groupFrancesco Siddi
The objects making up each icon are placed in a group named after the icon coordinates in the grid. This change has no impact on the current pipeline used to include icons in a Blender build, but lays the foundation to explore other workflows to do that, and tidies up the file. Differential Revision: https://developer.blender.org/D15251
2022-07-04OBJ: remove "experimental" from C++ based importer/exporter, mark Python legacyAras Pranckevicius
By now I'm not aware of any serious regressions or missing functionality in the C++ based OBJ importer/exporter. They have more features (vertex colors support), and are way faster than the Python based importer/exporter. Reviewed By: Thomas Dinges, Howard Trickey Differential Revision: https://developer.blender.org/D15360
2022-06-30Transform Snap: nearest face snap mode, snapping options, refactoring.jon denning
This commit adds a new face nearest snapping mode, adds new snapping options, and (lightly) refactors code around snapping. The new face nearest snapping mode will snap transformed geometry to the nearest surface in world space. In contrast, the original face snapping mode uses projection (raycasting) to snap source to target geometry. Face snapping therefore only works with what is visible, while nearest face snapping can snap geometry to occluded parts of the scene. This new mode is critical for retopology work, where some of the target mesh might be occluded (ex: sliding an edge loop that wraps around the backside of target mesh). The nearest face snapping mode has two options: "Snap to Same Target" and "Face Nearest Steps". When the Snap to Same Object option is enabled, the selected source geometry will stay near the target that it is nearest before editing started, which prevents the source geometry from snapping to other targets. The Face Nearest Steps divides the overall transformation for each vertex into n smaller transformations, then applies those n transformations with surface snapping interlacing each step. This steps option handles transformations that cross U-shaped targets better. The new snapping options allow the artist to better control which target objects (objects to which the edited geometry is snapped) are considered when snapping. In particular, the only option for filtering target objects was a "Project onto Self", which allowed the currently edited mesh to be considered as a target. Now, the artist can choose any combination of the following to be considered as a target: the active object, any edited object that isn't active (see note below), any non- edited object. Additionally, the artist has another snapping option to exclude objects that are not selectable as potential targets. The Snapping Options dropdown has been lightly reorganized to allow for the additional options. Included in this patch: - Snap target selection is more controllable for artist with additional snapping options. - Renamed a few of the snap-related functions to better reflect what they actually do now. For example, `applySnapping` implies that this handles the snapping, while `applyProject` implies something entirely different is done there. However, better names would be `applySnappingAsGroup` and `applySnappingIndividual`, respectively, where `applySnappingIndividual` previously only does Face snapping. - Added an initial coordinate parameter to snapping functions so that the nearest target before transforming can be determined(for "Snap to Same Object"), and so the transformation can be broken into smaller steps (for "Face Nearest Steps"). - Separated the BVH Tree getter code from mesh/edit mesh to its own function to reduce code duplication. - Added icon for nearest face snapping. - The original "Project onto Self" was actually not correct! This option should be called "Project onto Active" instead, but that only matters when editing multiple meshes at the same time. This patch makes this change in the UI. Reviewed By: Campbell Barton, Germano Cavalcante Differential Revision: https://developer.blender.org/D14591
2022-06-17Cleanup: Simplify syntax in curves draw cache fileHans Goudey
Also remove some unnecessary logic and change a variable name.
2022-06-16UI: Add initial "grid view"Julian Eisel
Part of T98560. See https://wiki.blender.org/wiki/Source/Interface/Views Adds all the basic functionality needed for grid views. They display items in a grid of rows and columns, typically with a preview image and a label underneath. Think of the main region in the Asset Browser. Current features: - Active item - Notifier listening (also added this to the tree view) - Performance: Skip adding buttons that are not scrolled into view (solves performance problems for big asset libraries, for example). - Custom item size - Preview items (items that draw a preview with a label underneath) - Margins between items scale so the entire region width is filled with column, rather than leaving a big empty block at the right if there's not enough space for another column (like the File and current Asset Browser does it). - "Data-View Item" theme colors. Not shown in the UI yet. No user visible changes expected since the grid views aren't used for anything yet. This was developed as part of a rewrite of the Asset Browser UI (`asset-browser-grid-view` branch), see T95653. There's no reason to keep this part in a branch, continuing development in master makes things easier. Grid and tree views have a lot of very similar code, so I'm planning to unify them to a degree. I kept things separate for the start to first find out how much and what exactly makes sense to override.
2022-06-15UI: Implement icons for the curve sculpt tools brushesDalai Felinto
I'm using the tool icons for the brush themselves. Note: This includes a few brushes that are only defined in D15134. Those are simply the icons rendered with a world background of #282828.
2022-06-15UI: Icons - Rename Density and Slide sculpt curve iconsDalai Felinto
Those tools will get renamed to follow the standard we have for the other tools (i.e., add sculpt_ in their name).
2022-06-09UI: Sculpt Curves Slide iconDalai Felinto
2022-06-08Cleanup: Move sculpt_automasking.c to c++Joseph Eagar
2022-06-07UI: Curves Sculpt density + smooth brushesDalai Felinto
More information in the svn log. But basically the smooth brush is re-using the previous one we had for hair, and the density is representing the hair root points that are removed to reach the desired density. Those brushes are used by D15134.
2022-06-03Fix typo in colorspace descriptionBrecht Van Lommel
2022-06-02Color Management: add Filmic sRGB as an image colorspaceBrecht Van Lommel
A typical use case is when you want to render with the Filmic view transform, but composite an existing image in the background that should not be affected by the view transform. With this colorspace it's possible to do an inverse Filmic transform, render everything in scene linear space, and then apply the Filmic transform again. This is pretty basic in that this is not going to take into account the full view transform including looks, curves and exposure. But it can be helpful anyway. Ref T68926
2022-06-02Cleanup: remove "<pep8 compliant>" from headersCampbell Barton
It can be assumed that all scripts comply with basic pep8 formatting regarding white-space, indentation etc. Also remove note in best practices page & update `tests/python/pep8.py`. If we want to exclude some scripts from make format, this can be done by adding them to `ignore_files` in: source/tools/utils_maintenance/autopep8_format_paths.py Or using `# nopep8` for to ignore for individual lines. Ref T98554
2022-05-31Merge branch 'blender-v3.2-release'Joseph Eagar
2022-05-31Fix T98364: Remove improper OPTYPE_UNDO flagsJoseph Eagar
Removed OPTYPE_UNDO flags from the swap brush colors and sample color operators. These types of operators are not supposed to be undoable in the first place. Also memfile undo is too buggy for it.
2022-05-30Merge branch 'blender-v3.2-release'Joseph Eagar
2022-05-30Fix T98368: Shading artifacts on paint/mask anchored sculpt brushesJoseph Eagar
I'm not sure what is causing this. Vertex normals get corrupted for paint and mask sculpt brushes but not the normal geometric ones. Since we don't actually need to recalculate normals here to begin with I've just disabled it. The code now calls the appropriate node mark update function based on the sculpt tool.
2022-05-25UI: Curves Sculpt pinch iconDalai Felinto
2022-05-25UI: Update icons after the latest changes in the generator scriptDalai Felinto
There should be no visible change. The difference is mostly on how we changed the rounding to handle the conversion from color space to the new linear space of the attribute colors. To convert the materials in icon_geom.blend I used: ``` import bpy from mathutils import Color def convert_material(material): if not material.use_nodes: return if not material.node_tree: return node_tree = material.node_tree for node in node_tree.nodes: if node.type != 'RGB': continue color_original = node.outputs[0].default_value color_new = Color(color_original[:3]).from_srgb_to_scene_linear() color = (*color_new, color_original[3]) node.outputs[0].default_value = color def main(): for material in bpy.data.materials: convert_material(material) main() ```
2022-05-25Tool Icons: Support curve and objects with modifiers + color space fixDalai Felinto
This allows for the new tool icons to use geometry nodes. In order to do this I also had to use the new API for accessing the attributes (instead of vertex colors). Which in turn requires a few changes to use linear color space. I went ahead and updated the entire code to use the linear space everywhere. I will update the icon files manually to make sure the final result is similar to what we have now. Note: We now use round instead of int. That plus the changes regarding the color space will lead to some icons to change slightly (no perceived visual change). Differential Revision: https://developer.blender.org/D14988
2022-05-25UI: Fix ops.sculpt.cloth_filter iconDalai Felinto
This icon was using a material with a slightly different shade of purple. I removed all the duplicated materials in icons_geom.blend and this was the only "functional" change (though it is not noticeable).
2022-05-23Fix T98258: Duplicated last vertex after GPencil sample.YimingWu
Also fixed an unreported issue of incorrect interpolation of thickness. Reviewed By: Aleš Jelovčan (frogstomp), Antonio Vazquez (antoniov) Differential Revision: https://developer.blender.org/D15005
2022-05-23Fix T98258: Duplicated last vertex after GPencil sample.YimingWu
Also fixed an unreported issue of incorrect interpolation of thickness. Reviewed By: Aleš Jelovčan (frogstomp), Antonio Vazquez (antoniov) Differential Revision: https://developer.blender.org/D15005
2022-05-19UI: Expose new tool icon: Selection PaintDalai Felinto
This icon will be used by the curves paint select brush.
2022-05-12UI: Tweak Sculpting Trim iconsDalai Felinto
Update the trim icons so they don't show a dashed line. Instead they have now a continuous red line. This is important because the sculpting tools are planning to use the same icons for selection as the regular tools. And those icons use dashed line to represent selection. Note the icon file has two new icons which are not used at the moment (they are in the Unused collection): * ops.generic.select_paint * ops.generic.select_line
2022-05-10UI: Geometry Nodes IconDalai Felinto
Geometry Nodes (new) icon. So far we were using the generic node-tree icon for geometry nodes, not anymore. The new icon is composed of 4 spheres that is a reference to the original pebbles demo. Scattering points was also the turning point for the project (which originally was focusing on dynamic effects), and to this day is one of the first steps for everything procedural such as hair. Note that the modifier icon is still showing as white in the outliner. The alternative is to be blue everywhere. Patch review and feedback by Hans Goudey. Icon creation in collaboration with Pablo Vazquez.
2022-05-10Merge branch 'blender-v3.2-release'Joseph Eagar
2022-05-10D14887: Fix artifacts in hue filterRamil Roosileht
The hue color filter now wraps correctly. Fixes T97768. Reviewed By: Julien Kaspar & Joseph Eagar Differential Revision: https://developer.blender.org/D14887 Ref D14887
2022-05-03Sculpt Curves Puff iconDalai Felinto
2022-05-02Revert "Blender 3.2 splashscreen"Thomas Dinges
This reverts commit d1cbfc81bb900c82098a7a5076890fd200069cae.
2022-05-02Blender 3.2 splashscreenThomas Dinges
Credits: Oksana Dobrovolska
2022-04-25Fix T97423: Make mask filter less confusingJoseph Eagar
by showing redo panel. The A hotkey has "auto iteration" enabled by default, which calculates the number of times to run the filter using a heuristic based on vertex count. To make clear to the user what is going on the redo panel is now shown for the mask filter operator. NOTE: I discovered the source of the bug where sculpt operators' redo panels were greyed out. The name fed to SCULPT_undo_push_begin must match the operator name. I've added a comment in sculpt_intern explaining this.
2022-04-22Change vertex paint icon color (fix)Ramil Roosileht
Apply standard green tool color to vertex paint tools, to keep icon color palette more consistent https://developer.blender.org/D14694