Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 721 / 5574

June 18, 2020, 19:05 (GMT)
Cleanup: Move snap callbacks to their respective transform mode

These functions are very specific to the mode.

More modes can support snap, and there is no reason to keep all
callbacks for each mode in the transform_snap.c file.
June 18, 2020, 18:34 (GMT)
Fix T78004: Instant crash when Shift+D duplicating a Collection Instance.

Dummy mistake in own recent refactor of duplicate code...
Revision 3aadf68 by Aaron Carlisle
June 18, 2020, 16:46 (GMT)
UI: Weight Modifiers Falloff: Use better step icon
June 18, 2020, 16:27 (GMT)
LibOverride: only tag actually changed orig IDs for automatic override diffing.

This makes any operation (including mere bone selection) several times
faster on some complex production character, since we typically now only
need to diff a single ID, instead of tens of them.
June 18, 2020, 16:27 (GMT)
LibOverride: Improve performances by using better string hashing function.

This is not really huge improvements, but 2% are always good to have.
June 18, 2020, 16:18 (GMT)
Depsgraph: use blender::Map instead of std::map

We decided to use our own map data structure in general for better
readability and performance.

Reviewers: sergey

Differential Revision: https://developer.blender.org/D7987
June 18, 2020, 16:00 (GMT)
LibOverride: increase speed of RNA diffing process.

By using own path construction instead of handy printf-like functions,
we get a 10% improvement on overall diffing process!

This remains way to slow on some complex production characters, but
always good to have still.
Revision 667ef99 by Pablo Vazquez
June 18, 2020, 15:54 (GMT)
UI: Place "New Collection" item above list in Move/Link to Collection menu

This way "New Collection" is always assigned the same shortcut (N).
Whereas previously it would be automatically assigned the leftover key
from the list of available collections.

Nice side effect is that since N is next to M in most keyboard layouts,
moving to a new collection is super fast by hitting M then N.

{F8630575, size=full}

Paper-cut pointed out by DerekWatts on [devtalk](https://devtalk.blender.org/t/blender-ui-paper-cuts/2596/4211) (thanks!):
{F8630492, size=full}

Reviewed By: HooglyBoogly

Differential Revision: https://developer.blender.org/D8067
June 18, 2020, 12:41 (GMT)
Fix for T77095: work around render artifacts with AMD Radeon RX 4xx and 5xx
June 18, 2020, 12:37 (GMT)
Fix T65986: Inaccurate center of mass, calculating mesh center

Use a median center of polygons as an initial value for volume center
calculation since the volume accumulation quickly generates very large
numbers that become inaccurate if the geometry is too far
from it's current center.
June 18, 2020, 12:27 (GMT)
Fluids: fix variable names

This seems to be an error in rBb91b90f0dd3c9bff3b1a6e563c2cce293722ed16.

I found it, because I could not open the file in T77263 anymore.

Reviewers: sebbas

Differential Revision: https://developer.blender.org/D8065
June 18, 2020, 11:27 (GMT)
Fix T77764: VSE: snap strip to current frame does not move associated
effect strips keyframes along

Maniphest Tasks: T77764

Differential Revision: https://developer.blender.org/D7996
June 18, 2020, 09:09 (GMT)
Fix T77957: Height change in Camera Properties column when changing lens type

Remove unneeded extra column from perspective type properties.

Maniphest Tasks: T77957

Differential Revision: https://developer.blender.org/D8060
June 18, 2020, 08:37 (GMT)
Allow interpolation of matrices with negative scale / axis flips

The matrix interpolation function `interp_m3_m3m3()` decomposes the
matrices into rotation and scale matrices, converts the rotation
matrices to quaternions, SLERPs the quaternions, and converts the result
back to a matrix. Since quaternions cannot represent axis flips, this
results in interpolation problems like described in T77154.

Our interpolation function is based on "Matrix Animation and Polar
Decomposition", by Ken Shoemake & Tom Duff. The paper states that it
produces invalid results when there is an axis flip in the rotation
matrix (or negative determinant, or negative scale, those all indicate
the same thing). Their solution is to multiply the rotation matrix with
`-I`, where `I` is the identity matrix. This is the same as element-wise
multiplication with `-1.0f`. My proposed solution is to not only do that
with the rotation matrix `R`, but also with the scale matrix `S`. This
ensures that the decomposition of `A = R * S` remains valid, while also
making it possible to conver the rotation component to a quaternion.

There is still an issue when interpolating between matrices with
different determinant. As the determinant represents the change in
volume when that matrix is applied to an object, interpolating between a
negative and a positive matrix will have to go through a zero
determinant. In this case the volume collapses to zero. I don't see this
as a big issue, though, as without this patch Blender would also produce
invalid results anyway.

Reviewed By: brecht, sergey

Differential Revision: https://developer.blender.org/D8048
June 18, 2020, 08:37 (GMT)
Tests: added simple unittests for matrix interpolation

The interpolation of 4x4 and 3x3 matrices will fail when the rotation
component has a singularity, i.e. when there is one axis mirrored. Two
mirrored axes are just a rotation of 180 degrees around the third, and
three mirrored axes are such a rotation + a single axis mirror. To
prepare for a fix, I first wanted to cover the basic functionality with
a few unit tests.

These tests check that `interpolate(A, B, alpha)` always returns `A` for
`alpha=0`, always return `B` for `alpha=1`, and something in between for
`alpha=0.5`.
June 18, 2020, 06:30 (GMT)
Sequencer: revert selection & keymap changes from D7679

These changes aren't aligned with other timeline selection keymaps
(graph & action for e.g.).

Revert these changes, shortcuts to time-line editors
should take other similar spaces into account.
June 18, 2020, 06:26 (GMT)
Fix doc generation for enum & attr's with multi-line descriptions
June 18, 2020, 05:49 (GMT)
Python API: path mapping options for library writing function

When "Relative Remap" option was added, the intention was only to remap
paths that were already relative. However it remapped all paths.

This was reported as T62612 and fixed recently,
however some Python script authors depended on the old behavior.

For users, it's reasonable to use the existing operators to make paths
absolute/relative. For scripts however it's useful to be able to write
out individual data-blocks with the ability to make all paths relative.

Now `bpy.data.libraries.write()` takes a path_remap argument which can
be `NONE/RELATIVE/RELATIVE_ALL/ABSOLUTE` allowing the script author to
choose how paths are handled when writing out data-blocks.

Addresses T77768.
June 18, 2020, 04:30 (GMT)
Cleanup: remove unnecessary flag clearing

This is not read from blend files.
June 18, 2020, 04:30 (GMT)
BKE_global: No longer read/write G_FILE_HISTORY

This is a runtime only flag
which doesn't make sense to store in the file.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021