blender/scripts
Lukas Tönne 91f1f3fc06 GPv3: Implementation of sculpt mode tools
This implements all the sculpt tools in Grease Pencil 3.

UI changes in the 3D view header and keymap entries for sculpt mode are
still minimal, more entries should be added once the relevant operators
are supported.

A set of utility functions and a shared base class
`GreasePencilStrokeOperationCommon` for sculpt operations has been added
to make individual operations less verbose.
The `GreasePencilStrokeParams` struct bundles common arguments to reduce
the amount of boilerplate code. The `foreach_editable_drawing` utility
function takes care of setting up the parameters and finding the right
drawings, so the tool only has to modify the data. Common features like
tracking mouse movement and inverting brush influence are handled by the
common base class.

Most operations are then relatively simple, with the exception of the
Grab and Clone operations.
- __Grab__ stores a stroke mask and weights on initialization of the
  stroke, rather than working with the usual selection mask.
- __Clone__ needs access to the clipboard, which requires exposing the
  clipboard in the editor API.

Pull Request: https://projects.blender.org/blender/blender/pulls/120508
2024-04-25 20:20:27 +02:00
..
freestyle Cleanup: unused imports 2024-04-19 16:09:30 +10:00
modules GPv3: Cutter tool 2024-04-22 14:05:22 +02:00
presets GPv3: Implementation of sculpt mode tools 2024-04-25 20:20:27 +02:00
site Cleanup: spelling in comments, update dictionary 2023-09-03 21:35:07 +10:00
startup GPv3: Implementation of sculpt mode tools 2024-04-25 20:20:27 +02:00
templates_osl License headers: remove GPL header from OSL template script 2023-08-04 13:24:15 +10:00
templates_py Python: replace '%' with str.format for examples & templates 2024-04-12 15:33:40 +10:00