Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 334 / 5574

Revision 392efc7 by Julian Eisel
March 24, 2021, 13:28 (GMT)
Cleanup: Use const in region queries
March 24, 2021, 13:18 (GMT)
Alembic procedural: deduplicate cached data accross frames

Currently the procedural will add an entry to the cache for every frame
even if the data only changes seldomly. This means that in some cases we
will have duplicate data accross frames.

The cached data is now stored separately from the time information, and
an index is used to retrieve it based on time. This decoupling allows
for multiple frames to point to the same data.

To check if two arrays are the same, we compute their keys using the
Alembic library's routines (which is based on murmur3), and tell the
cache to reuse the last data if the keys match.

This can drastically reduce memory usage at the cost of more processing
time, although processing time is only increased if the topology may
change.
March 24, 2021, 12:27 (GMT)
Geometry Nodes: add versioning for attribute fill

The attribute domain of old nodes should be set to `ATTR_DOMAIN_AUTO`.
Revision c0a4c8c by Dirk / Jacques Lucke
March 24, 2021, 11:53 (GMT)
Fix T86891: only sort query results for shortest string if there is a query

Differential Revision: https://developer.blender.org/D10802
March 24, 2021, 10:57 (GMT)
Fix: Memory Leak When Using Compositor.

When using the compositor inlined static vectors could allocate
memory. This memory wasn't freed. This patch would make them inline
again.
March 24, 2021, 10:00 (GMT)
Cleanup: clang-tidy errors.
March 24, 2021, 09:41 (GMT)
Fix T86601: Cycles accumulates displacement when transforming an Object

In order to update the BVH when only the transformations are changing,
we would tag the Object's Geometry as modified. However, when
displacement is used, and the vertices were not themselves modified,
this would cause us to redo the displacement on already displaced
vertices.

To fix this, use a specific update flag for detecting and notifying that
transformations were modified.

Regression caused by rBbbe6d44928235cd4a5cfbeaf1a1de78ed861bb92.
March 24, 2021, 09:41 (GMT)
Cleanup: unused variable
March 24, 2021, 09:29 (GMT)
Fix T86314: materials not updated correctly after collada import

Make sure we have valid links and link pointers using
'ntreeUpdateTree()'.

Maniphest Tasks: T86314

Differential Revision: https://developer.blender.org/D10793
March 24, 2021, 08:34 (GMT)
Cleanup: remove stdio.h header from MEM_guardedalloc.h

This was included for `FILE *` which isn't used in the header.

Ref D10799
March 24, 2021, 01:38 (GMT)
Cleanup: use new BLI_assert_unreachable macro
March 23, 2021, 18:34 (GMT)
Fix T86753: Connected Proportional editing with individual origins using different orientation than set

The problem happened when the selection only allowed "single_islands"
(only vertices are selected, no edges or faces).

The result of `is_zero_v3(v->no)` was erroneously being compared to `0.0f`

This commit corrects the wrong condition and optimizes it by adding a
earlier return when the islands don't need to be calculated.

(It also improves the code's readability by joining some variables in the
`struct TransIslandData`).
March 23, 2021, 15:56 (GMT)
Cleanup: allow looking up size of unsupported domains

There isn't really a reason for not supporting it.
March 23, 2021, 15:49 (GMT)
Cleanup: use BLI_assert_unreachable in some places
March 23, 2021, 15:45 (GMT)
BLI: add macro to indicate unreachable code

This adds a `BLI_assert_unreachable()` macro, that should be used instead
of `BLI_assert(false)` in many places.

* `BLI_assert_unreachable` provides more information than `BLI_assert(false)`
to people reading the code.
* `BLI_assert_unreachable` will print an error to `stderr` in a release build.
This makes it more likely that we will get bug reports when the assumptions
of a developer were wrong.

Differential Revision: https://developer.blender.org/D10780
March 23, 2021, 15:14 (GMT)
Cleanup: WorkScheduler.

- Use constexpr for better readability.
- Split in functions per backend.
- Split work scheduler global struct in smaller structs.
- Replaced std::vector with blender::Vector.
- Removed threading defines in COM_defines.h
Revision 83df354 by Hans Goudey
March 23, 2021, 15:05 (GMT)
Geometry Nodes: Make plane primitive size consistent

This means the "Size" input is treated as a "diameter" instead of
a "radius", just like the 3D view primitives.
March 23, 2021, 15:03 (GMT)
Fix (unreported) object duplicate code wrongly duplicating linked objects.

Linked data should only be duplicated if relevant `eDupli_ID_Flags` flag
is set (`USER_DUP_LINKED_ID`), this is being taken care of by generic
`BKE_id_copy_for_duplicate` function, but for some reasons (?)
`BKE_object_duplicate` was directly using `BKE_id_copy` for itself...

Note that this had especially bad consequences when duplicating
overrides of collections...
Revision 9f19d01 by Hans Goudey
March 23, 2021, 15:02 (GMT)
Geometry Nodes: Move mesh primitives to their own category

It makes more sense to avoid mixing the primitives with other mesh
operations. We considered adding a "Mesh" prefix to the names too,
but decided to prioritize improvements to the node search menu instead,
and only consider that if there is an overlapping prefix name for
another data type.
March 23, 2021, 14:59 (GMT)
Fix T86567: Cycles crashes when playing back animated volumes

The crash is caused by an out of bound access in the kernel due to
missing data update when a Volume's voxel data changes. Although the
previous bounding mesh is cleared, the Volume Node was not tagged as
modified, and therefore never rebuilt.

To fix this, tag the Geometries (not just Volumes, to be more robust) as
modified in Geometry.clear().

Regression caused by rBbbe6d44928235cd4a5cfbeaf1a1de78ed861bb92.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021