tornavis/intern
Hans Goudey e5ec04d73c Mesh: Move vertex/edge crease to generic attributes
Store subdivision surface creases in two new named float attributes:
- `crease_vert`
- `crease_edge`
This is similar to 2a56403cb0.

The attributes are naming conventions, so their data type and domain
aren't enforced, and may be interpolated when necessary. Editing tools
and the subdivision surface modifier use the hard-coded name. It might
be best if these were edited as generic attributes in the future, but
in the meantime using generic attributes helps.

The attributes are visible in the list, which is how they're now meant
to be removed. They are now interchangeable with any tool that works
with the generic attribute system-- even tools like vertex paint can
affect creases now.

This is a breaking change. Forward compatibility isn't preserved for
versions before 3.6, and the `crease` property in RNA is removed in
favor of making a smaller API surface area with just the attribute API.
`Mesh.vertex_creases` and `Mesh.edge_creases` now just return the
matching attribute if possible, and are now implemented in Python.
New functions `*ensure` and `*remove` also replace the operators to
add and remove the layers for Python.

A few extrude node test files have to be updated because of different
(now generic) attribute interpolation behavior.

Pull Request: https://projects.blender.org/blender/blender/pulls/108089
2023-06-13 20:23:39 +02:00
..
atomic Remove "All Rights Reserved" from Blender Foundation copyright code 2023-03-30 10:51:59 +02:00
audaspace CMake: fix AUDASPACE disabling WITH_PYTHON for Blender 2022-05-20 11:18:49 +10:00
clog Cleanup: format (with BraceWrapping::AfterControlStatement "MultiLine") 2023-05-02 09:37:49 +10:00
cycles Mesh: Move vertex/edge crease to generic attributes 2023-06-13 20:23:39 +02:00
dualcon Cleanup: consistent doxygen comment blocks 2023-05-27 15:10:58 +10:00
eigen Remove "All Rights Reserved" from Blender Foundation copyright code 2023-03-30 10:51:59 +02:00
ffmpeg Revert "Deps_builder: Move Windows build from MinGW/GCC to msys2/MSVC" 2023-06-10 16:24:17 -06:00
ghost Vulkan: Initial Cube(Array) Support 2023-06-09 16:09:54 +02:00
guardedalloc Merge branch 'blender-v3.6-release' into main 2023-06-13 19:48:48 +02:00
iksolver Fix set but unused variable in IK solver 2023-04-19 10:02:09 +02:00
itasc Remove "All Rights Reserved" from Blender Foundation copyright code 2023-03-30 10:51:59 +02:00
libc_compat Remove "All Rights Reserved" from Blender Foundation copyright code 2023-03-30 10:51:59 +02:00
libmv Libmv: Remove FreeBSD sincos() workaround 2023-05-30 13:55:27 +02:00
locale Cleanup: move comments wrapped with MultiLine control statements 2023-05-02 09:54:48 +10:00
mantaflow BLI_path: add a size argument to BLI_path_frame 2023-05-02 17:19:48 +10:00
memutil BLI: Replace some macros with inlined functions for C++ 2023-05-23 09:21:45 +02:00
mikktspace Cleanup: format (with BraceWrapping::AfterControlStatement "MultiLine") 2023-05-02 09:37:49 +10:00
opencolorio Refactor: Convert ImBuf to C++ 2023-05-02 11:32:27 +02:00
opensubdiv Cleanup: format (with BraceWrapping::AfterControlStatement "MultiLine") 2023-05-02 09:37:49 +10:00
openvdb Remove "All Rights Reserved" from Blender Foundation copyright code 2023-03-30 10:51:59 +02:00
quadriflow Remove "All Rights Reserved" from Blender Foundation copyright code 2023-03-30 10:51:59 +02:00
renderdoc_dynload Cleanup: sort file, uppercase booleans, add missing headers 2023-05-17 13:13:10 +10:00
rigidbody Cleanup: format (with BraceWrapping::AfterControlStatement "MultiLine") 2023-05-02 09:37:49 +10:00
sky Cleanup: use C-style code comments, format 2023-03-03 16:29:22 +11:00
utfconv Remove "All Rights Reserved" from Blender Foundation copyright code 2023-03-30 10:51:59 +02:00
wayland_dynload GHOST/Wayland: improve workaround for libdecor setting the window state 2022-11-16 12:31:29 +11:00
CMakeLists.txt Cleanup: sort file, uppercase booleans, add missing headers 2023-05-17 13:13:10 +10:00