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-06-04D15041: Sculpt: Elastic TransformPablo Dobarro
This implements transform modes for the transform tool and Elastic Transform. This mode uses the Kelvinlets from elastic deform to apply the transformation to the mesh, using the cursor radius to control the elasticity falloff. {F9269771} In order for this to work, the transform tool uses incremental mode when elastic transform is enabled. This allows to integrate the displacement of the Kelvinet in multiple steps. Review By: Sergey Sharbin & Daniel Bystedt & Julian Kaspar & Campbell Barton Differential Revision: https://developer.blender.org/D9653 Ref D15041
2022-06-03Curves: Add surface UV map name propertyHans Goudey
In the latest discussions about curves/hair mesh attachement information (T95776), it was decided to use UV coordinates to store where on the mesh each root is. For that, we have to specify which of the UV map attributes to use for UV lookups. This property isn't used yet, but it will be shortly when refactoring the attachement information in the add brush and the to particle system conversion. Differential Revision: https://developer.blender.org/D15115
2022-06-03Fix typo in colorspace descriptionBrecht Van Lommel
2022-06-03Fix: Curves sculpt mode keymaps missing in preferencesHans Goudey
These changes make the curves sculpt mode keymap consistent with other modes. They now show up in the keymap, for potential editing of tool shortcuts, etc. I don't fully understand this system, but at least these changes should make it consistent. Differential Revision: https://developer.blender.org/D15112
2022-06-02Cleanup: Simplify curves toolbar drawing logicHans Goudey
Use `elif` to clarify that only one case happens.
2022-06-02Fix T79801: openvdb cache does not support Unicode paths on windowsRay Molenkamp
"Fix" should be taken with a grain of salt, this will fix the issue on win10 1903 and newer. OpenVDB uses boosts memory mapped files which call CreateFileA in the back-end when you feed it a regular string. now the encoding for CreateFileA will be whatever the default is for the system, it internally turns it into a wide string with said encoding and calls CreateFileW. This change changes that encoding to UTF-8 for just blender so we can use utf-8 with any of the narrow api functions. This is a manifest change and only win10 1903 will look for it, so that sadly limits the fix to only a subset of users. While ideally we would have fixed the issue our selves, some of the calls to openvdb::io::file::open are beyond our control (ie from inside USD or Mantaflow) Note: This only changes the behaviour in regard to Win32 API functions, regular CRT functions like fopen or if_stream will still not accept utf-8 filenames. Differential Revision: https://developer.blender.org/D14981 Reviewed by: brecht
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-06-02Fix T98552: Experimental Tweak Select: Curve handle tweak is difficultCampbell Barton
When this preference is enabled, use selection behavior matching the graph editor. We may want to make this default (see T98552).
2022-06-01GPencil: Add support to name new layer when moving to layerAntonio Vazquez
To make it consistent with collections, now it's possible to name the new layer created using the `Move to Layer` option. Differential Revision: https://developer.blender.org/D15092
2022-06-01Merge branch 'blender-v3.2-release'Campbell Barton
2022-06-01Fix T98370: Shift+RMB Select nodes doesn't work with the tweak toolCampbell Barton
The tweak tool was toggling node selection twice, as the selection key-map is already accounted for in the node key-map there is no need to duplicate the actions in the tweak tool.
2022-06-01Cleanup: use 'e' prefix for enum typesCampbell Barton
- CustomDataType -> eCustomDataType - CustomDataMask -> eCustomDataMask - AttributeDomain -> eAttrDomain - NamedAttributeUsage -> eNamedAttrUsage
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-31Curves: Add soft selection in sculpt modeHans Goudey
This commit adds a float selection to curve control points or curves, a sculpt tool to paint the selection, and uses the selection influence in the existing sculpt brushes. The selection is the inverse of the "mask" from mesh sculpt mode currently. That change is described in more detail here: T97903 Since some sculpt tools are really "per curve" tools, they use the average point selection of all of their points. The delete brush considers a curve selected if any of its points have a non-zero selection. There is a new option to choose the selection domain, which affects how painting the selection works. You can also turn the selection off by clicking on the active domain. Sculpt brushes can be faster when the selection is small, because finding selected curves or points is generally faster than the existing brush intersection and distance checks. The main limitation currently is that we can't see the selection in the viewport by default. For now, to see the selection one has to add a simple material to the curves object as shown in the differential revision. And one has to switch to Material Preview in the 3d view. Differential Revision: https://developer.blender.org/D14934
2022-05-31Attributes: Hide internal UI attributes and disallow procedural accessHans Goudey
This commit hides "UI attributes" described in T97452 from the UI lists in mesh, curve, and point cloud properties, and disallow accessing them in geometry nodes. Internal UI attributes like selection and hiding values should use the attribute system for simplicity and performance, but we don't want to expose those attributes in the attribute panel, which is meant for regular user interaction. Procedural access may be misleading or cause problems, as described in the design task above. These attributes are added by two upcoming patches: D14934, D14685 Differential Revision: https://developer.blender.org/D15069
2022-05-31PyDoc: replace in-lined enum references with links where possibleCampbell Barton
Avoid in-lining large enums such as icons and event types, linking to them instead. This mitigates T76453, where long enums took a lot of space in the docs, this was a problem with `UILayout` where each icon argument would list all icons. [0] worked around the issue using CSS to scroll the list. However this has the draw-back where some items are clipped in a way that's not obvious, see: T87008. The reason this isn't a complete solution is that Python defined enums aren't written into their own pages which can be linked to, although currently there are no large Python enums included in the API docs. All in-lined enums are now under 20 items. [0]: 1e8f2665916c049748a3985a2fce736701925095
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-26Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-26Fix Blender 2.7x keymap faulure to select & drag multiple nodesCampbell Barton
A follow up on the fix for T98145 for the 2.7x keymap.
2022-05-26Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-26Fix T94857: 'Gizmo Operator' from python templates spins when draggedCampbell Barton
Callbacks used in the gizmo operator template don't support updating while being dragged, set the EXCLUDE_MODAL flag so the offsets aren't accumulated. Also fix the offset being applied twice to the move gizmo.
2022-05-26UI: use visible regions when showing candidates for operators data-pathCampbell Barton
When expanding the data path for the context, use Context.temp_override to extract context members. Without this, only context-members available in the preferences were used which misses members which are likely to be useful. Iterate over all windows, areas and regions showing unique member as candidates. The search is limited to WINDOW/PREVIEW region types, the preferences space type is also excluded. See the doc-string for rna_path_prop_search_for_context for additional notes on this.
2022-05-26UI support for showing candidates for string propertiesCampbell Barton
Currently strings are used for cases where a list of identifiers would be useful to show. Add support for string properties to reference a callback to populate candidates to show when editing a string. The user isn't prevented from typing in text not found in this list, it's just useful as a reference. Support for expanding the following strings has been added: - Operator, menu & panel identifiers in the keymap editor. - WM operators that reference data-paths expand using the Python-consoles auto-complete functionality. - Names of keying sets for insert/delete keyframe operators. Details: - `bpy.props.StringProperty` takes an option `search` callback. - A new string callback has been added, set via `RNA_def_property_string_search_func` or `RNA_def_property_string_search_func_runtime`. - Addresses usability issue highlighted by T89560, where setting keying set identifiers as strings isn't practical. - Showing additional right-aligned text in the search results is supported but disabled by default as the text is too cramped in most string search popups where the feature would make sense. It could be enabled as part of other layout tweaks. Reviewed By: brecht Ref D14986
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-23Asset Browser: Show "Current File" icon in sidebar source fieldJulian Eisel
If the asset is stored in the current file, display the corresponding icon in the "Source" button in the sidebar. This is a nice indicator and helps users learn what this icon represents (it's used in the main region without text too).
2022-05-23Cycles: Add half precision float support for volumes with NanoVDBPatrick Mours
This patch makes it possible to change the precision with which to store volume data in the NanoVDB data structure (as float, half, or using variable bit quantization) via the previously unused precision field in the volume data block. It makes it possible to further reduce memory usage during rendering, at a slight cost to the visual detail of a volume. Differential Revision: https://developer.blender.org/D10023
2022-05-23Merge branch 'blender-v3.2-release'Bastien Montagne
2022-05-23Fix T96878: When interface translation is enabled, grease pencil layer name ↵Bastien Montagne
is translated in menu. Those type of entries have to be tagged as not translatable...
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-23PyDoc: quiet output and minor cleanupCampbell Barton
Suppress printing unnecessary output when generating docs.
2022-05-23Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-23Fix float representation for Python API docsCampbell Barton
float_as_string(1000000) resulted in 1e+06.0 which isn't valid notation.
2022-05-23Cleanup: formattingAaron Carlisle
2022-05-20LibOverride: Add option to Hierarchy Creation to get all data user-editable ↵Bastien Montagne
by default. Avoids having to manually enable data-blocks for user-edition when you do not care about what should be edited by whom. Similar to default behavior before introduction of system overrides (aka non-user-editable overrides).
2022-05-20Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-20Fix T98145: IC keymap can't select & move multiple nodesCampbell Barton
Regression from [0] which changed operator properties without updating this keymap. [0]: 4c3e91e5f565b81dd79b5d42f55be5b93662d410
2022-05-20Include __init__.py in bl_console_utilsCampbell Barton
Failure to include this file caused script_load_modules test to fail.
2022-05-20Cleanup: warnings, spelling, formattingCampbell Barton
Avoid multiple `sound.bl_rna.properties["channels"].enum_items` in the same line. Note we might want a way to avoid having to do this.
2022-05-20Cleanup: move 'console' module to 'bl_console_utils.autocomplete'Campbell Barton
The name 'console' for a module was too generic, move into a sub-package of bl_console_utils, so other console utilities can be added without creating new top-level modules.
2022-05-19VSE: Display sound sample rate and channelsMarcos Perez
Display information about sound media in "Source" category in side panel similar to movie resolution and framerate. The specs are stored in the `Sequence` struct, and are extracted at the moment of struct creation. If the "source file" is changed, the specs change also. Reviewed By: ISS Differential Revision: https://developer.blender.org/D14565
2022-05-19UI: Expose new tool icon: Selection PaintDalai Felinto
This icon will be used by the curves paint select brush.
2022-05-19Cleanup: format, reduce line length & strip trailing spaceCampbell Barton
2022-05-18Merge branch 'blender-v3.2-release'Campbell Barton