Age | Commit message (Collapse) | Author |
|
Adding more precision to help making watertight objects to be printed.
|
|
|
|
This is necessary to avoid false positive memory leaks.
|
|
When definining static variables that own memory, you should
use the "construct on first use" idiom. Otherwise, you'll get
a warning when Blender exits.
More details are provided in D8354.
Differential Revision: https://developer.blender.org/D8354
|
|
This is a convenience wrapper for `Map<Key, Vector<Value>>`.
It does not provide any performance benefits (yet). I need this
kind of map in a couple of places and before I was duplicating
the lookup logic in many places.
|
|
Currently negative values from this type will be changed if the
int8_t changes to a int16_t for e.g.
|
|
|
|
This is a continuation of fix for T78307. Turns out instancing do not
work at all, so enforce single widget drawing on macOS and Intel GPU.
It was also reported that certain AMD and Mesa driver suffer from
similar issue, so disabled instancing for this configuration as well.
Differential Revision: https://developer.blender.org/D8374
|
|
|
|
|
|
|
|
|
|
Pin can be used in edit-mode when shape key in edit-mode is enabled.
|
|
|
|
Not sure if this is the correct fix, because I can't reproduce the error.
|
|
|
|
|
|
|
|
When "ID Data" -> "Make Single User" is chosen with selected elements
that are not curves, there is a crash. This fix ensures that the id in the
callback function is an Action.
|
|
|
|
Once the base pose was changed (e.g. by changing the active landmark), we'd always run the logic to reset to the base pose. That would mess up the final viewer pose.
Think this only got exposed through 607d745a79e0.
|
|
|
|
When interpolate, the temp frames are tagged, and later removed. If for any reason any stroke was tagged in other area of Blender (this tag is used for temp tagging), the stroke could be removed by error when run interpolation.
In a previous fix, the tag was cleared before, but only for the frame range of the interpolation. Now, the clear is done for all frames.
Also, instead to clear for each stroke sampling, now it's done only once at invoke time.
|
|
Particles are now emitted from vertices of the mesh.
|
|
Asan reports warnings because of this.
|
|
|
|
|
|
Pretty straight-forward, although it does not rebuild relationships
(this is a heavy process we do not want to automate for now, will be a
separate operator in near future).
Fix T78179: Library Overrides - Additional geometry not updating without reloading scene.
|
|
|
|
Once again, we need lots of unatural twisting and convolutions to get
those nasty things to work...
Note that in previous versions of Blender, this would not crash, but was
still broken (shapekeys were never actually reloaded from libraries).
|
|
|
|
This is a change I pulled from the property-search-ui branch,
where I have to use the list of tabs to search the inactive tabs
and it makes more sense to use the array directly.
It is also an improvement to have this fundamental code to the
properties editor in the editor code rather than an RNA callback.
There are no functional changes.
Differential Revision: https://developer.blender.org/D8368
|
|
|
|
Reviewers: campbellbarton
Differential Revision: https://developer.blender.org/D8373
|
|
Reviewers: sybren
Differential Revision: https://developer.blender.org/D8315
|
|
The extra depsgraph relations that were added to prevent threading
issues during evaluation (rB4c30dc343165) caused a considerable slowdown
on complex scenes with many drivers (T77277, T78615). This commit
improves this as follows.
Only the following drivers are considered for execution serialisation:
- Drivers on Array elements, and
- Drivers on Boolean or Enum properties.
Relations between drivers of the same arrays are added blindly, i.e.
without checking for transitive or cyclic relations. This is possible as
other relations will just target the `PROPERTIES_ENTRY` or
`PROPERTIES_EXIT` nodes.
Checking whether a driver is on an array is first done by checking
`array_index > 0`, and then falling back to resolving the RNA path to an
RNA property and inspecting that.
The code also avoids circular dependencies when there are multiple
drivers on the same property. This not something that is expected to
happen (both the UI and the Python API prevent duplicate drivers), it
did happen in a file (F8669945, example file of T78615) and it is easy
to deal with here.
Reviewers: sergey
Subscribers: mont29
Comment update
|
|
New code to calculate UV islands made an incorrect assumption about
maximum stack size.
|
|
New code to calculate UV islands made an incorrect assumption about
the maximum size of a stack.
|
|
|
|
Same as T75943 that was fixed by rBff97545c50f4
|
|
Same as T75943 that was fixed by rBff97545c50f4
|
|
I'll really have to refactor `ntreeUpdateTree` soon to avoid scanning
all node trees multiple times.
|
|
|
|
|
|
This means that we delete all override properties except for those over
ID pointers *if* the assigned pointer matches the linked data hierarchy.
Then we reload affected datablocks.
|
|
Storing this info will help with dealing with reset operations and the
like (as we do not want to reset overrides of ID pointers essentially).
|
|
Enhance checks for which ID is valid for the override creation
operation.
|
|
|
|
Also cleanup naming in outliner's override callbacks.
|
|
|