Age | Commit message (Collapse) | Author |
|
Paint and smear tools are only implemented for regular mesh PBVH,
meaning they are not supported by the dynamic topology and multires
sculpting.
These tools are to be ignored for an unsupported sculpt modes, regardless
of state of user preferences.
Reviewed By: sergey
Maniphest Tasks: T81932
Differential Revision: https://developer.blender.org/D9308
|
|
|
|
This adds a layer of abstraction between the code calling callbacks
on sockets and the implementation of those callbacks.
This abstraction layer allows some sockets to not implement all
callbacks when those can be derived from some other callback.
|
|
Setting the stack size only works for executables, for shared libraries
the host application controls it.
|
|
The new parameter allows to define if after cutting the stroke the cap of the cut side will be set as flat.
Before, the cap shape of the cut side always was equal to the original stroke, and in some situations, the rounded cap was visible.
Note: If the angle of the join is very extreme, it's still possible to view some sections of the cut stroke.,
|
|
|
|
Every label string in uiItem* calls needs an IFACE_ call.
|
|
|
|
The material index was not used and only worked with new objects.
|
|
|
|
All tools planned for 2.91 now have icons, so this option can be
removed.
Reviewed By: dfelinto, Severin
Differential Revision: https://developer.blender.org/D9299
|
|
|
|
From the backtrace it looks like in some cases file save (which triggers
a general override updates) is done before other code has a chance to
re-generate pose data, leading to rna accessing freed memory.
I was never able to reproduce that here, so this is a tentative fix in
master, if it proves to be working for the studio it will be
cherry-picked into 2.91 release branch later.
|
|
Avoids having to spread the check logic everywhere in the code.
|
|
|
|
Leftover from rBe05ce1ea2029, 'use_image_editor_legacy_drawing' was
removed.
Maniphest Tasks: T81953
Differential Revision: https://developer.blender.org/D9310
|
|
This is still very basic and does quite a few unnecessary computations.
Also the error handling is quite weak currently, so when invalid things are
connected, it will probably just crash.
Also the interface that individual nodes have to implement will have to change,
but the current solution is a good starting point.
Only the triangulate node is implemented for now.
|
|
|
|
This class represents a pointer whose type is only known at runtime.
|
|
|
|
Is no longer used, fully replaced with more powerful algorithm.
|
|
|
|
It was rather a huge chunk of code, which started to become
more harder to maintain with the transition to OpenSubdiv based
implementation. Because of this transition, the compatibility was
also rather on a poor side.
Remove compatibility support for pre-2.50.9 multires.
Ref T77107
Reviewed By: brecht, mont29
Differential Revision: https://developer.blender.org/D9238
|
|
Historically the result of the keying node was violating alpha
pre-multiplication rules in Blender: it was simply overriding
the alpha channel of input.
This change makes it so keying node mixes alpha into the input,
which solves the following issues:
- The result is properly pre-multiplied, no need in separate
alpha-convert node anymore.
- Allows to more easily stack keying nodes.
This usecase was never really investigated, but since previously
alpha is always overwritten it was never possible to easily stack
nodes. Now it is at something to be tried.
Unfortunately, this breaks compatibility with existing files, where
alpha-convert node is to be manually removed.
From implementation side this is done as a dedicated operation since
there was no ready-to-use operation. Maybe in the future it might
be replaced with some sort of vector math node.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D9211
|
|
`imb_gpu_get_data` could reuse `data_rect` when it was already in used (double alloc).
making the first use leak. This was detected after enabling OpenGL Texture
Limit.
Reviewed By: Clément Foucault
Differential Revision: https://developer.blender.org/D9280
|
|
|
|
Caused by ad70d4b0956f5, assigning the matrix now
clears the flag that would reset it.
|
|
|
|
This avoids accidents using user-preferences in the main BLF API,
which could cause preferences to be used unintentionally
(such as stamping into renders or creating generated images).
As well as uses of BLF when preferences aren't loaded
such as animation playback.
|
|
|
|
Updates from 9d30fade3ea9b weren't applied to the animation player
causing an assert and missing call to IMB_init.
|
|
|
|
|
|
|
|
Selecting an F-Curve handle caused an assertion as well as treating
the key-frame as inactive.
Allow active the keyframe to be active when it's handle is selected,
as is done with bezier curves.
|
|
These changes should result in more readable and undestandable code,
especially where while loops were use instead of for loops. They are
not comprehensive, and I skipped wherever the change was not obvious.
|
|
|
|
Missing NULL check in bmesh_kernel_vert_separate.
|
|
|
|
Regression in 0b2d1badecc48.
|
|
In practice, there are only a limited number of operations we need to
use repeat such as navigation, stepping operations that cycle states
and text input.
Now we don't need to disable repeat explicitly when a modal operator
uses checks for a key being held as was needed for 17cb2a6da0c88.
Repeat is now included in exported keymaps.
Use versioning so existing exported keymaps are loaded properly.
|
|
Write the Blender version into the keymap
so we can change defaults without breaking existing keymaps.
Based on patch by @erik85 with own additions.
|
|
This exposes the version saved to the file,
compatible with `bpy.data.version`.
This is needed to write out version information into key-maps.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|