[Bf-blender-cvs] [ecbf681e318] sculpt-dev: Merge remote-tracking branch 'origin/master' into sculpt-dev
Joseph Eagar
noreply at git.blender.org
Sat Apr 16 05:04:17 CEST 2022
Commit: ecbf681e3180c999a8d26ca2ab03e7514cc61d15
Author: Joseph Eagar
Date: Thu Apr 14 22:25:34 2022 -0700
Branches: sculpt-dev
https://developer.blender.org/rBecbf681e3180c999a8d26ca2ab03e7514cc61d15
Merge remote-tracking branch 'origin/master' into sculpt-dev
===================================================================
===================================================================
diff --cc release/datafiles/icons/brush.sculpt.displacement_smear.dat
index f53b9519241,9e4df45b2d2..5d422130ea3
Binary files differ
diff --cc release/scripts/presets/keyconfig/keymap_data/blender_default.py
index a4bff0f30e7,fc86d02b83e..a952c8c9b53
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@@ -1267,16 -1387,21 +1267,17 @@@ def km_view3d(params)
("view3d.localview", {"type": 'NUMPAD_SLASH', "value": 'PRESS'}, None),
("view3d.localview", {"type": 'SLASH', "value": 'PRESS'}, None),
("view3d.localview", {"type": 'MOUSESMARTZOOM', "value": 'ANY'}, None),
- ("view3d.localview_remove_from", {"type": 'M', "value": 'PRESS'}, None),
+ ("view3d.localview_remove_from", {"type": 'NUMPAD_SLASH', "value": 'PRESS', "alt": True}, None),
+ ("view3d.localview_remove_from", {"type": 'SLASH', "value": 'PRESS', "alt": True}, None),
# Navigation.
("view3d.rotate", {"type": 'MOUSEROTATE', "value": 'ANY'}, None),
- *((
- ("view3d.rotate", {"type": 'MIDDLEMOUSE', "value": 'PRESS', "shift": True}, None),
+ *((("view3d.rotate", {"type": 'MIDDLEMOUSE', "value": 'PRESS', "shift": True}, None),
("view3d.move", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
("view3d.rotate", {"type": 'TRACKPADPAN', "value": 'ANY', "shift": True}, None),
- ("view3d.move", {"type": 'TRACKPADPAN', "value": 'ANY'}, None),
- ) if params.use_v3d_mmb_pan else (
- ("view3d.rotate", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
+ ("view3d.move", {"type": 'TRACKPADPAN', "value": 'ANY'}, None),) if params.use_v3d_mmb_pan else (("view3d.rotate", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
("view3d.move", {"type": 'MIDDLEMOUSE', "value": 'PRESS', "shift": True}, None),
("view3d.rotate", {"type": 'TRACKPADPAN', "value": 'ANY'}, None),
- ("view3d.move", {"type": 'TRACKPADPAN', "value": 'ANY', "shift": True}, None),
- )),
+ ("view3d.move", {"type": 'TRACKPADPAN', "value": 'ANY', "shift": True}, None),)),
("view3d.zoom", {"type": 'MIDDLEMOUSE', "value": 'PRESS', "ctrl": True}, None),
("view3d.dolly", {"type": 'MIDDLEMOUSE', "value": 'PRESS', "shift": True, "ctrl": True}, None),
("view3d.view_selected", {"type": 'NUMPAD_PERIOD', "value": 'PRESS', "ctrl": True},
@@@ -1790,15 -1830,19 +1791,15 @@@ def km_graph_editor(params)
{"properties": [("mode", 'TIME_EXTEND')]}),
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
- *_template_items_proportional_editing(
- params, connected=False, toggle_data_path='tool_settings.use_proportional_fcurve'),
+ *_template_items_proportional_editing(params, connected=False, toggle_data_path='tool_settings.use_proportional_fcurve'),
("marker.add", {"type": 'M', "value": 'PRESS'}, None),
- ("marker.rename", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
- *_template_items_context_menu("GRAPH_MT_context_menu", params.context_menu_event),])
+ *_template_items_context_menu("GRAPH_MT_context_menu", params.context_menu_event),
+ ])
if not params.legacy:
- items.extend([
- op_menu_pie("GRAPH_MT_pivot_pie", {"type": 'PERIOD', "value": 'PRESS'}),
- ])
+ items.extend([op_menu_pie("GRAPH_MT_pivot_pie", {"type": 'PERIOD', "value": 'PRESS'}),])
else:
- items.extend([
- # Old pivot.
+ items.extend([# Old pivot.
("wm.context_set_enum", {"type": 'COMMA', "value": 'PRESS'},
{"properties": [("data_path", 'space_data.pivot_point'), ("value", 'BOUNDING_BOX_CENTER')]}),
("wm.context_set_enum", {"type": 'PERIOD', "value": 'PRESS'},
@@@ -2373,12 -2483,13 +2374,11 @@@ def km_dopesheet(params)
{"properties": [("mode", 'TIME_SCALE')]}),
("transform.transform", {"type": 'T', "value": 'PRESS', "shift": True},
{"properties": [("mode", 'TIME_SLIDE')]}),
- *_template_items_proportional_editing(
- params, connected=False, toggle_data_path='tool_settings.use_proportional_action'),
+ *_template_items_proportional_editing(params, connected=False, toggle_data_path='tool_settings.use_proportional_action'),
("marker.add", {"type": 'M', "value": 'PRESS'}, None),
- ("marker.rename", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
("marker.camera_bind", {"type": 'B', "value": 'PRESS', "ctrl": True}, None),
*_template_items_context_menu("DOPESHEET_MT_context_menu", params.context_menu_event),
- *_template_items_change_frame(params),
- ])
+ *_template_items_change_frame(params),])
return keymap
@@@ -2388,12 -2499,18 +2388,16 @@@
def km_nla_generic(_params):
items = []
- keymap = (
- "NLA Generic",
+ keymap = ("NLA Generic",
{"space_type": 'NLA_EDITOR', "region_type": 'WINDOW'},
- {"items": items},
- )
+ {"items": items},)
- items.extend([*_template_space_region_type_toggle(sidebar_key={"type": 'N', "value": 'PRESS'},),
- ("nla.tweakmode_enter", {"type": 'TAB', "value": 'PRESS'}, None),
+ items.extend([
+ *_template_space_region_type_toggle(
+ sidebar_key={"type": 'N', "value": 'PRESS'},
+ ),
+ ("nla.tweakmode_enter", {"type": 'TAB', "value": 'PRESS'},
+ {"properties": [("use_upper_stack_evaluation", False)]}),
("nla.tweakmode_exit", {"type": 'TAB', "value": 'PRESS'}, None),
("nla.tweakmode_enter", {"type": 'TAB', "value": 'PRESS', "shift": True},
{"properties": [("isolate_action", True)]}),
@@@ -2494,9 -2620,9 +2498,8 @@@ def km_nla_editor(params)
("transform.transform", {"type": 'S', "value": 'PRESS'},
{"properties": [("mode", 'TIME_SCALE')]}),
("marker.add", {"type": 'M', "value": 'PRESS'}, None),
- ("marker.rename", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
*_template_items_context_menu("NLA_MT_context_menu", params.context_menu_event),
- *_template_items_change_frame(params),
- ])
+ *_template_items_change_frame(params),])
return keymap
diff --cc release/scripts/startup/bl_ui/space_view3d.py
index ab5a557c6b4,74f20aca072..0f09c608985
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@@ -2708,13 -2711,20 +2708,16 @@@ class VIEW3D_MT_object_apply(Menu)
layout.separator()
- layout.operator(
- "object.visual_transform_apply",
+ layout.operator("object.visual_transform_apply",
text="Visual Transform",
- text_ctxt=i18n_contexts.default,
- )
- layout.operator(
- "object.convert",
+ text_ctxt=i18n_contexts.default,)
+ layout.operator("object.convert",
text="Visual Geometry to Mesh",
- text_ctxt=i18n_contexts.default,
- ).target = 'MESH'
+ text_ctxt=i18n_contexts.default,).target = 'MESH'
layout.operator("object.duplicates_make_real")
+ layout.operator("object.parent_inverse_apply",
+ text="Parent Inverse",
+ text_ctxt=i18n_contexts.default)
class VIEW3D_MT_object_parent(Menu):
diff --cc source/blender/blenkernel/CMakeLists.txt
index 71da5bc9da8,ce4131a0627..6122afe9a0e
--- a/source/blender/blenkernel/CMakeLists.txt
+++ b/source/blender/blenkernel/CMakeLists.txt
@@@ -119,8 -111,8 +119,9 @@@ set(SR
intern/curve_decimate.c
intern/curve_deform.c
intern/curve_eval.cc
+ intern/curvemapping_cache.c
intern/curve_nurbs.cc
+ intern/curve_poly.cc
intern/curve_to_mesh_convert.cc
intern/curveprofile.cc
intern/curves.cc
diff --cc source/blender/blenkernel/intern/mesh_remesh_voxel.cc
index 3d8890c8f6f,7be4a6f2f94..7cdd18d1fc0
--- a/source/blender/blenkernel/intern/mesh_remesh_voxel.cc
+++ b/source/blender/blenkernel/intern/mesh_remesh_voxel.cc
@@@ -27,8 -22,8 +27,9 @@@
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
+#include "DNA_object_types.h"
+ #include "BKE_attribute.h"
#include "BKE_bvhutils.h"
#include "BKE_customdata.h"
#include "BKE_editmesh.h"
diff --cc source/blender/blenkernel/intern/pbvh_intern.h
index c298d56d01e,ea1f0632f32..acc1db36da9
--- a/source/blender/blenkernel/intern/pbvh_intern.h
+++ b/source/blender/blenkernel/intern/pbvh_intern.h
@@@ -47,17 -31,19 +47,22 @@@ struct PBVHNode
/* For internal nodes, the offset of the children in the PBVH
* 'nodes' array. */
int children_offset;
+ int subtree_tottri;
+
+ int depth;
- /* Pointer into the PBVH prim_indices array and the number of
- * primitives used by this leaf node.
+ /* List of primitives for this node. Semantics depends on
+ * PBVH type:
*
- * Used for leaf nodes in both mesh- and multires-based PBVHs.
+ * - PBVH_FACES: Indices into the PBVH.looptri array.
+ * - PBVH_GRIDS: Multires grid indices.
+ * - PBVH_BMESH: Unused. See PBVHNode.bm_faces.
+ *
+ * NOTE: This is a pointer inside of PBVH.prim_indices; it
+ * is not allocated separately per node.
*/
int *prim_indices;
- unsigned int totprim;
+ unsigned int totprim; /* Number of primitives inside prim_indices. */
/* Array of indices into the mesh's MVert array. Contains the
* indices of all vertices used by faces that are within this
@@@ -111,16 -96,18 +115,19 @@@
int proxy_count;
PBVHProxyNode *proxies;
-- /* Dyntopo */
-
+ /* GSet of pointers to the BMFaces used by this node.
+ * NOTE: PBVH_BMESH only. Faces are always triangles
+ * (dynamic topology forcibly triangulates the mesh).
+ */
- GSet *bm_faces;
- GSet *bm_unique_verts;
- GSet *bm_other_verts;
- float (*bm_orco)[3];
- int (*bm_ortri)[3];
- int bm_tot_or
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list