diff options
author | Pablo Dobarro <pablodp606> | 2022-06-04 05:21:04 +0300 |
---|---|---|
committer | Joseph Eagar <joeedh@gmail.com> | 2022-06-04 23:50:28 +0300 |
commit | e90ba74d3eb826abab4ec65b82fe0176ce3b7d1b (patch) | |
tree | 10f0d095e4aae8c50614b65ba2b71af4bc013002 /source/blender/makesdna/DNA_scene_types.h | |
parent | e230ccaf8c3b62f8c1a322d525084226136578ba (diff) |
D15041: Sculpt: Elastic Transform
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
Diffstat (limited to 'source/blender/makesdna/DNA_scene_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_scene_types.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h index 1be27e0354c..47463638706 100644 --- a/source/blender/makesdna/DNA_scene_types.h +++ b/source/blender/makesdna/DNA_scene_types.h @@ -991,6 +991,9 @@ typedef struct Sculpt { // float pivot[3]; XXX not used? int flags; + /* Transform tool. */ + int transform_mode; + int automasking_flags; /* Control tablet input */ @@ -1011,6 +1014,8 @@ typedef struct Sculpt { float constant_detail; float detail_percent; + char _pad[4]; + struct Object *gravity_object; } Sculpt; @@ -2279,6 +2284,12 @@ typedef enum eSculptFlags { SCULPT_HIDE_FACE_SETS = (1 << 17), } eSculptFlags; +/* Sculpt.transform_mode */ +typedef enum eSculptTransformMode { + SCULPT_TRANSFORM_MODE_ALL_VERTICES = 0, + SCULPT_TRANSFORM_MODE_RADIUS_ELASTIC = 1, +} eSculptTrasnformMode; + /** PaintModeSettings.mode */ typedef enum ePaintCanvasSource { /** Paint on the active node of the active material slot. */ |