Blender Git Commit Log

All Blender Git commits.

Page: 786 / 8462

March 26, 2021, 09:50 (GMT)
Fix T86939: Cycles objects bounds not updated when transforming objects

As a rather premature optimization from rBbbe6d4492823, Object bounds
were only computed when either the Object or its Geometry were modified.
Prior to rB42198e9eb03b, this would work, as the Geometry was tagged as
modified if the Object's transform was also modified.

Since this tagging is not done anymore due to side effects, and since at
the time bounds are computed Objects were already processed and tag as
unmodified, the check on the modified status was always false.

For now remove this check, so the bounds are always unconditionally
updated. If this ever becomes a performance problem in large scenes with
motion blur, we will then try to find a way to nicely optimize it.

This would only affect BHV2 as OptiX and Embree handle object bounds
themselves.
March 26, 2021, 09:46 (GMT)
Fix error when an addon has no `__init__.py`

When an addon has been removed, but its `.pyc` files are still there,
the Python module can still be loaded. However, because `__init__.py` is
missing, it becomes a namespace instead of a module, and its `__file__`
will be set to `None`. As a result, it's impossible to get the mtime
from the file (because there is none).

This should not influence any regularly uninstalled add-on, as that
would just remove the add-on's directory; I ran into the problem when
switching Git branches caused an add-on's Python files to disappear
while keeping the `__pycache__` directory around.
March 26, 2021, 08:58 (GMT)
Cycles: Use const qualifier in GPUDisplay reset
March 26, 2021, 08:58 (GMT)
Cycles: Add comment about allocation size of PBO
March 26, 2021, 08:58 (GMT)
Cycles: Remove old pixels drawing and film conversion

The conversion to byte buffer is now a dead code. Would need to have
a decision to remove conversion to byte buffer, or to bring it back.
March 26, 2021, 08:58 (GMT)
Cycles: Use better check for CUDA graphics interoperability

The idea is to disable graphics interoperability if the compute device
is not part of the OpenGL context.

Test setup:
- Linux Debian Testing
- RTX 6000 used as non-display compute device
- NVidia driver 460.56

The render time of very simple scene in viewport is about 17% faster
than with an interop.
March 26, 2021, 08:58 (GMT)
Cycles: Support CUDA Graphics Interoperability

Allows to update GPUDisplay using CUDA without need to copy pixels
from GPU to CPU and back to GPU.

Pretty much refactoring the old code to fit into the new GPUDisplay
and PathTraceWork.

Rendering on CUDA Titan V which is the display card here is about 10%
faster vieweport rendering of simple scene compared to the round trip.

The compute device RTC6000 is 17% slower that the round trip.
Would not consider this a stopper for this change as the similar timing
difference can be observed in the old DisplayBuffer style of drawing.
March 26, 2021, 08:13 (GMT)
Cryptomatte: Fix error loading incomplete metadata.

When rendering with cycles at some point the manifest is trimmed. This
leads to incomplete/corrupted metadata. This patch will make sure that
the manifest parser doesn't crash.

This solved the issue when the manifest is trimmed at the start of a
hash. Eg '"Name":"'.
March 26, 2021, 08:12 (GMT)
Initial raw liboverride-dedicated view in the Outliner.

Disclaimer: this is merely a copy of the Libraries (aka blend file)
view, with some minor tweaking.
March 26, 2021, 07:38 (GMT)
Cleanup: Fix clang-tidy errors.
March 26, 2021, 06:59 (GMT)
UV: warn when unwrapping fails

Report an error when unwrapping can't solve some UV islands,
note that edge-seams may need to be set.

Address T86936
March 26, 2021, 03:58 (GMT)
Cleanup: use code doxy command for Python snippet
March 26, 2021, 03:55 (GMT)
Cleanup: spelling
March 26, 2021, 03:29 (GMT)
Geometry Nodes: Add Attribute Map Range Node

This commit adds a node with a "Map Range" operation for attributes
just like the non-attribute version of the node. However, unlike the
regular version of the node, it also supports operations on vectors.

Differential Revision: https://developer.blender.org/D10344
March 26, 2021, 02:37 (GMT)
Animation: action mirror RNA API using pose contents

This adds a new RNA method `Action.flip_with_pose(ob)` to flip the
action channels that control a pose.
The rest-pose is used to properly flip the bones transformation.

This is useful as a way to flip actions used in pose libraries,
so the same action need not be included for each side.

Reviewed By: sybren

Ref D10781
March 26, 2021, 02:37 (GMT)
Animation: add BKE_fcurve_pathcache_find API

Support a cache for fast RNA path look-ups for RNA-path + index.

Unlike a regular hash lookup, this supports using a single lookup
for the RNA path which is then used to fill an array of F-curves.

Reviewed By: sybren

Ref D10781
March 26, 2021, 02:37 (GMT)
Animation: add BKE_fcurves_calc_keyed_frames utility

This function returns an array of keyed frames with rounding,
to avoid duplicates caused by subtle floating point difference.

Reviewed By: sybren

Ref D10781
March 26, 2021, 01:28 (GMT)
Cleanup: clang-format
March 26, 2021, 01:24 (GMT)
CMake: add headers to source lists, sort file-lists
March 26, 2021, 00:59 (GMT)
Fix: Geometry Nodes: Incorrect offsets for plane primitive

The recent commit that changed the size (rB83df3545246aada) left out
a few changed. This patch also adjusts the positioning and UV scale of
the generated plane accordingly.

Differential Revision: https://developer.blender.org/D10822
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021