Blender Git Commits

Blender Git "master" branch commits.

Page: 30 / 5574

November 29, 2021, 23:15 (GMT)
Cleanup: spelling in comments & strings
November 29, 2021, 23:15 (GMT)
Cleanup: capitalize NOTE tag
November 29, 2021, 23:15 (GMT)
Cleanup: remove blank lines in comment blocks
November 29, 2021, 23:15 (GMT)
Cleanup: clang-format, trailing space
November 29, 2021, 19:04 (GMT)
Geometry Nodes: Domain Size Node

The Domain Size node has a single geometry input and a selection for
the component type. Based on the component chosen, outputs containing
single values for the related domains are shown.

Mesh:
- Point Count
- Edge Count
- Face Count
- Face Corner Count
Curve:
- Point Count
- Spline Count
Point Cloud:
- Point Count
Instances:
- Instance Count

Differential Revision: https://developer.blender.org/D13365
November 29, 2021, 18:25 (GMT)
Merge branch 'blender-v3.0-release'
November 29, 2021, 18:23 (GMT)
Fix T93310: crash due to broken image paths

The crash was caused by allocating an uninitialized amount of memory.
This fix initializes a bunch of variables that could cause the error.

It should be possible to also fix this in the function that actually uses
the uninitialized memory, but that could cause unknown consequences
that are a bit too risky for 3.0. Just initializing some variables should
be safe though. For more details see D13369.

Differential Revision: https://developer.blender.org/D13369
November 29, 2021, 17:41 (GMT)
Fix debug build error after recent Cycles kernel argument changes
November 29, 2021, 17:41 (GMT)
Fix Cycles OptiX doing a bit too much work for almost opaque curve shadows

Found in D13353, likely has no significant impact in performance.
November 29, 2021, 16:09 (GMT)
Merge branch 'blender-v3.0-release'
November 29, 2021, 15:59 (GMT)
Fix T93439: Armature widgets from hidden collections are invisible

The are few things in the dependency graph which lead to the issue:
- IDs are only built once.
- Object-data level (Armature, i,e,) builder dependent on the object
visibility.

This caused issues when an armature is first built as not directly
visible (via driver, i.e.) and then was built as a directly visible.
This did not update visibility flag on the node for the custom shape
object.

The idea behind the fix is to go away form passing object visibility
flag to the geometry-level builders and instead rely on the common
visibility flush post-processing to make sure certain objects are
fully visible when needed.

This is the safest minimal part of the change for 3.0 release which
acts as an additional way to ensure visibility. This means that it
might not be a complete fix (if some configuration was overseen) but
it should not make currently working cases to not work.

The fix should also make modifiers used on rigify widgets to work.

The more complete fix will have `is_object_visible` argument removed
from the geometry-level builder functions.

Differential Revision: https://developer.blender.org/D13404
November 29, 2021, 15:59 (GMT)
Merge branch 'blender-v3.0-release'
Revision dae9917 by Sergey Sharybin
November 29, 2021, 15:45 (GMT)
Fix T93384: Objects with Constraints to curves have wrong locations on file load

Regression since 3.93 caused by 752c6d668bcb.

Follow the code from 2.93 which was always leaving curve modifiers
evaluation with a valid and clean state of the bounding box.

This is also what was proposed and agreed on in the following
design task: T92206: Bounding Box: compute during depsgraph evaluation

Tested with files from T90808 and T93384.

For the 3.0 going with the safest and minimal change. The rest of
the bounding box un-entanglement is to happen outside of the stable
branch.

Thanks The patch is based on the code from Philipp Oeser and
investigation by Germano Cavalcante and Dr. Sybren A. St�vel,
thanks!

Differential Revision: https://developer.blender.org/D13409
November 29, 2021, 15:27 (GMT)
Fix T92628: .blend thumbnail renders black with Cycles 3D viewport render

Don't use Cycles for rendering thumbnails, fall back to Solid shading.

Differential Revision: https://developer.blender.org/D13406
November 29, 2021, 15:20 (GMT)
Cycles: MetalRT support (kernel side)

This patch adds MetalRT support to Cycles kernel code. It is mostly additive in nature or confined to Metal-specific code, however there are a few areas where this interacts with other code:

- MetalRT closely follows the Optix implementation, and in some cases (notably handling of transforms) it makes sense to extend Optix special-casing to MetalRT. For these generalisations we now have `__KERNEL_GPU_RAYTRACING__` instead of `__KERNEL_OPTIX__`.
- MetalRT doesn't support primitive offsetting (as with `primitiveIndexOffset` in Optix), so we define and populate a new kernel texture, `__object_prim_offset`, containing per-object primitive / curve-segment offsets. This is referenced and applied in MetalRT intersection handlers.
- Two new BVH layout enum values have been added: `BVH_LAYOUT_METAL` and `BVH_LAYOUT_MULTI_METAL_EMBREE` for XPU mode). Some host-side enum case handling has been updated where it is trivial to do so.

Ref T92212

Reviewed By: brecht

Maniphest Tasks: T92212

Differential Revision: https://developer.blender.org/D13353
November 29, 2021, 14:56 (GMT)
Cycles: Metal readiness: Specify DeviceQueue::enqueue arg types

This patch adds new arg-type parameters to `DeviceQueue::enqueue` and its overrides. This is in preparation for the Metal backend which needs this information for correct argument encoding.

Ref T92212

Reviewed By: brecht

Maniphest Tasks: T92212

Differential Revision: https://developer.blender.org/D13357
November 29, 2021, 14:25 (GMT)
Fix T93431: Crash when empty is marked as asset

Make `ED_preview_id_is_supported(ID *)` NULL-safe. It's semantically
valid, as it's not possible to render a preview of a NULL ID.

The crash was introduced in 481f032f5cbe2cd3c36c9ef516670fd9e06db25f

Reviewed By: sybren, jbakker

Maniphest Tasks: T93431

Differential Revision: https://developer.blender.org/D13398
Revision f9add2d by Hans Goudey
November 29, 2021, 14:11 (GMT)
Fix: Missing min value for set spline resolution node
November 29, 2021, 13:22 (GMT)
Refactor BKE_bpath module.

The main goal of this refactor is to make BPath module use `IDTypeInfo`,
and move each ID-specific part of the `foreach_path` looper into their
own IDTypeInfo struct, using a new `foreach_path` callback.

Additionally, following improvements/cleanups are included:
* Attempt to get better, more consistent namings.
** In particular, move from `path_visitor` to more standard `foreach_path`.
* Update and extend documentation.
** API doc was moved to header, according to recent discussions on this
topic.
* Remove `BKE_bpath_relocate_visitor` from API, this is specific
callback that belongs in `lib_id.c` user code.

NOTE: This commit is expected to be 100% non-behavioral-change. This
implies that several potential further changes were only noted as
comments (like using a more generic solution for
`lib_id_library_local_paths`, addressing inconsistencies like path of
packed libraries always being skipped, regardless of the
`BKE_BPATH_FOREACH_PATH_SKIP_PACKED` `eBPathForeachFlag` flag value,
etc.).

NOTE: basic unittests were added to master already in
rBdcc500e5a265093bc9cc.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D13381
November 29, 2021, 12:43 (GMT)
Fix drawing annotations on surface

Caused by {rBaa0ac0035a0d}.

Similar solution to {rBc0fdaf700a5}.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021