tornavis/source/blender/makesdna
Hans Goudey a1830859fa Curves: Add soft selection in sculpt mode
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-31 19:00:24 +02:00
..
intern Cleanup: spelling in comments & move doc-strings to headers 2022-05-19 11:17:01 +10:00
CMakeLists.txt File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_ID.h Fix T97790: Crash in Outliner "Blender File" mode with old files 2022-05-27 17:03:25 +02:00
DNA_ID_enums.h Fix T97790: Crash in Outliner "Blender File" mode with old files 2022-05-27 17:03:25 +02:00
DNA_action_types.h Animation: Sensible frame range for motion paths 2022-04-26 12:33:35 +02:00
DNA_anim_types.h Cleanup: spelling in comments 2022-05-05 10:55:51 +10:00
DNA_armature_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_armature_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_asset_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_asset_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_boid_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_brush_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_brush_enums.h Curves: Add soft selection in sculpt mode 2022-05-31 19:00:24 +02:00
DNA_brush_types.h Curves: control number of control points in new curves 2022-05-05 12:11:50 +02:00
DNA_cachefile_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_cachefile_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_camera_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_camera_types.h LibOverride: Add full support for camera's background images. 2022-05-30 17:43:22 +02:00
DNA_cloth_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_collection_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_collection_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_color_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_constraint_types.h Cleanup: use doxygen links to struct members 2022-04-05 08:02:01 +10:00
DNA_curve_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_curve_types.h Fix T96498: Modifiers affect multiple curve objects 2022-04-22 10:27:15 -05:00
DNA_curveprofile_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_curves_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_curves_types.h Curves: Add soft selection in sculpt mode 2022-05-31 19:00:24 +02:00
DNA_customdata_types.h Cleanup: Simplify custom data file writing process 2022-05-29 11:02:10 +02:00
DNA_defaults.h Cleanup: remove white-space before headers 2022-02-11 14:23:54 +11:00
DNA_defs.h Cleanup: Simplify zero-initializing DNA structures in C++ 2022-04-04 11:47:28 +02:00
DNA_documentation.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_dynamicpaint_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_effect_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_fileglobal_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_fluid_defaults.h Cycles: add support for volume motion blur 2022-04-19 17:07:53 +02:00
DNA_fluid_types.h Cycles: add support for volume motion blur 2022-04-19 17:07:53 +02:00
DNA_freestyle_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_genfile.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_gpencil_modifier_defaults.h Cleanup: format, reduce line length & strip trailing space 2022-05-19 11:17:01 +10:00
DNA_gpencil_modifier_types.h GPencil: A Ping Pong effect to Time modifier 2022-05-23 16:03:04 +02:00
DNA_gpencil_types.h Cleanup: spelling in comments 2022-05-05 10:55:51 +10:00
DNA_gpu_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_image_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_image_types.h GPU: Remove cached full/scaled image texture. 2022-05-27 10:52:49 +02:00
DNA_ipo_types.h Cleanup: Rename original curve object type enum 2022-02-18 09:50:29 -06:00
DNA_key_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_lattice_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_lattice_types.h Cover some DNA files with C++ utility macros 2022-04-13 11:48:12 +02:00
DNA_layer_types.h Cleanup: spelling in comments 2022-05-03 15:11:27 +10:00
DNA_light_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_light_types.h Cover some DNA files with C++ utility macros 2022-04-13 11:48:12 +02:00
DNA_lightprobe_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_lightprobe_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_lineart_types.h LineArt: Use safe lineart_discard_duplicated_edges 2022-05-18 15:34:35 +08:00
DNA_linestyle_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_linestyle_types.h Cover some DNA files with C++ utility macros 2022-04-13 11:48:12 +02:00
DNA_listBase.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_mask_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_material_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_material_types.h PBVH Pixel extractor. 2022-04-15 16:40:01 +02:00
DNA_mesh_defaults.h Updated voxel remesher defaults 2022-04-12 23:33:36 -07:00
DNA_mesh_types.h Cleanup: fix compiler warnings on macOS 2022-05-11 18:03:26 +02:00
DNA_meshdata_types.h Refactor: Move mesh face dot tag out of MVert 2022-04-18 23:48:43 -05:00
DNA_meta_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_meta_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_modifier_defaults.h Allow surface deform when target mesh increases number of vertices 2022-05-04 10:56:33 +02:00
DNA_modifier_types.h Allow surface deform when target mesh increases number of vertices 2022-05-04 10:56:33 +02:00
DNA_movieclip_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_movieclip_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_nla_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_node_types.h Nodes: add separately allocated runtime data for nodes and sockets 2022-05-30 15:32:16 +02:00
DNA_object_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_object_enums.h Curves: add initial sculpt mode 2022-02-15 12:32:15 +01:00
DNA_object_fluidsim_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_object_force_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_object_types.h Curves: add second experimental option for new curves tools 2022-05-04 14:18:42 +02:00
DNA_outliner_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_packedFile_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_particle_defaults.h Cleanup: rename ParticleSettings.child_nbr => child_percent 2022-03-25 12:10:21 +11:00
DNA_particle_types.h Fix T68290: Baked particles don't render in final frame 2022-04-14 16:58:15 +10:00
DNA_pointcache_types.h Cleanup: rename CustomDataExternal.filename => filepath 2022-03-25 12:10:30 +11:00
DNA_pointcloud_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_pointcloud_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_rigidbody_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_scene_defaults.h Fix T96250: Invalid default for uv_relax_method 2022-03-09 16:10:19 +11:00
DNA_scene_types.h Fix T81715: Unprojected radius mode messes up sculpt texture radius 2022-05-15 00:33:22 -07:00
DNA_screen_types.h Cleanup: use _NUM suffix for space/region type ranges 2022-04-12 11:59:25 +10:00
DNA_sdna_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_sequence_types.h Cleanup: format, reduce line length & strip trailing space 2022-05-19 11:17:01 +10:00
DNA_session_uuid_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_shader_fx_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_simulation_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_simulation_types.h Cover some DNA files with C++ utility macros 2022-04-13 11:48:12 +02:00
DNA_sound_types.h VSE: Display sound sample rate and channels 2022-05-19 21:05:23 +02:00
DNA_space_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_space_types.h Cleanup: spelling in comments, capitalize tags 2022-05-13 09:29:25 +10:00
DNA_speaker_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_speaker_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_text_types.h Cleanup: spelling in comments, minor reformatting changes 2022-04-07 14:48:20 +10:00
DNA_texture_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_texture_types.h Cover some DNA files with C++ utility macros 2022-04-13 11:48:12 +02:00
DNA_tracking_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_userdef_enums.h Cleanup: use doxygen comments, correct spelling 2022-03-01 09:36:25 +11:00
DNA_userdef_types.h DrawManager: Hide lock acquire behind experimental feature. 2022-05-10 14:31:20 +02:00
DNA_uuid_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_vec_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_vec_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_vfont_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_view2d_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_view3d_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_view3d_enums.h XR: Add object extras, object types visibility session options 2022-04-30 16:23:43 +09:00
DNA_view3d_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_volume_defaults.h Cycles: Add half precision float support for volumes with NanoVDB 2022-05-23 19:08:01 +02:00
DNA_volume_types.h Cycles: Add half precision float support for volumes with NanoVDB 2022-05-23 19:08:01 +02:00
DNA_windowmanager_types.h Cleanup: spelling in comments 2022-04-20 10:41:31 +10:00
DNA_workspace_types.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_world_defaults.h File headers: SPDX License migration 2022-02-11 09:14:36 +11:00
DNA_world_types.h Cover some DNA files with C++ utility macros 2022-04-13 11:48:12 +02:00
DNA_xr_types.h XR: Add object extras, object types visibility session options 2022-04-30 16:23:43 +09:00