f1fca48a4fcfb2e11a0d5480d72a9203b770bdba
With the brush assets project, brushes were moved from being local to the working blendfile to being linked from asset libraries. This breaks the Image Paint 'Clone' brush, as it has a brush property that links to other Image datablocks. To support this functionality, this commit adds the corresponding properties into the `ImagePaintSettings` struct so that it is stored locally with the images that will be used by the tool, inside the main blendfile. The source image property is shared with the 3D version of the 'Clone' brush instead of adding a separate field to preserve old behavior. Notably, this has the following limitations: * If clone brush assets have been made and shared with external packs, they would not work out of the box with linked image assets. * Despite these settings being stored on the scene, they are populated inside the tool window under "Brush Settings" which is potentially misleading. However, this is already the case for the 3D version of the brush, so further UI refinement will happen outside of this PR. * Users will be unable to use separate images simultaneously for the Image editor and the 3D viewport, unlike in pre-4.3 versions. This can be adjusted in the future if it is a critical workflow. Because the intended design and functionality of this tool is currently questionable, this commit opts to make these changes instead of doing further design to support both accessing data on the brush and on the scene. Pull Request: https://projects.blender.org/blender/blender/pulls/134474
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
