Blender Git Commit Log

All Blender Git commits.

Page: 1215 / 8462

October 12, 2020, 13:12 (GMT)
Libmv: Remove array access from camera intrinsics

That was a suboptimal decision from back in the days, which ended up
being problematic. It is no longer used, so remove it from API making
it so new code does not depend on this weak concept.
October 12, 2020, 13:12 (GMT)
Libmv: Fix wrong packing order of intrinsics for BA step

The order got broken when Brown distortion model has been added.
Made it so the indexing of parameters is strictly defined in the
parameter block, matching how parameters are used in the cost
function.

There is some duplication going on accessing parameters. This can
be refactored in the future, by either moving common parts packing
and cost function to an utility function in bundle.cc.
Alternatively, can introduce a public PackedIntrinsics class which
will contain a continuous block of parameters, and each of the
camera models will have API to be initialized from packed form and
to create this packed form.

The benefit of this approach over alternative solutions previously
made in the master branch or suggested in D9116 is that the specific
implementation of BA does not dictate the way how public classes need
to be organized. It is API which needs to define how implementation
goes, not the other way around.

Thanks Bastien and Ivan for the investigation!
October 12, 2020, 13:12 (GMT)
Revert "Fix critical lens distortion bug in libmv after rB3a7d62cd1f5e."

This reverts commit 7e836bde11ce6521953c9f246cacd442a3ef6c0e.

Reverting the incomplete workaround, due to the following reasoning:

- There should be no dependency between CameraIntrinsics and the bundler
code. This violates intended abstraction of the intrinsics class.

- The fix was not complete, or wrong. Even in the world where there is
a requirement to the parameters storage size this should have applied
to all distortion models, including Divisions, Nuke.

Proper fix will be committed next.
October 12, 2020, 13:12 (GMT)
Libmv: Fix memory leak in modal solver

The leak was happening when problem did not have any parameters blocks
defined. This happens, for example, if there are no 3D points at all,
or when all markers are set to 0 weight.

Was noticeable in libmv_modal_solver_test when building with LSAN
enabled.
October 12, 2020, 13:12 (GMT)
Libmv: Cleanup, spelling in function name

Is a local function, not affecting API.
October 12, 2020, 13:10 (GMT)
BLI: support looking up a key from a set or adding it when not existant
Revision 662c0ac by Clément Foucault (master)
October 12, 2020, 13:04 (GMT)
Overlay: Fix Line antialiasing broken for some objects

Fix regression introduced in rBe12767a0352a9e113892b4a07c6c8446d3ff361f

The volumes are not a line type and should not be render into the line
framebuffer nor it should change the framebuffer.
October 12, 2020, 12:24 (GMT)
Cleanup: use openvdb matrices properly

Before I was double confused about how openvdb stores its
transformation matrices. Now, I know they have the same layout
physically in memory, but are logically transposed (i.e. the translation
is in the last row instead of in the last column).
October 12, 2020, 12:02 (GMT)
Animation: always try to match the existing curve when inserting keys

Previously Blender would only match the existing curve slope when the
to-be-inserted key value was already very close to the curve. This check
is now removed, allowing for sliders in the graph editor to subtly
change the curve, and for keyframes added with ctrl+click to follow the
curve better.
October 12, 2020, 11:57 (GMT)
Fix T81060: CustomData Correction sometimes breaks UVs and Vertex Colors

`CustomData_bmesh_interp` use the same CustomData decryptor (in this case, `bm->ldata`) in both blocks.

So make sure that all CustomData layers match.

This commit also removes redundant `BM_elem_attrs_copy_ex` calls.

Maniphest Tasks: T81060

Differential Revision: https://developer.blender.org/D9159
October 12, 2020, 10:45 (GMT)
Fluid: Use hidden symbol visibility

This resolves a long list of linker warnings that is currently only showing up on macOS arm builds.
The warnings themselves are of this shape (one example):

```
ld: warning: direct access in function 'Manta::MeshDataImpl<Manta::Vector3D<float> >::_W_39(_object, object, object*)' from file '../../lib/libextern_mantaflow.a(mesh.h.reg.cpp.o)' to global weak symbol 'typeinfo for Manta::MeshDataImpl<Manta::Vector3D<float> >' from file '../../lib/libextern_mantaflow.a(mesh.cpp.o)' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
```

Just would like to get your opinion to make sure this is an acceptable way to handle this on all platforms.

Reviewed By: LazyDodo

Differential Revision: https://developer.blender.org/D9002
October 12, 2020, 10:38 (GMT)
Volumes: reduce step and default of strength in Volume Displace modifier

The strength has a high impact on performance. With the previous
step and default one could easily and accidentally make Blender unusably
slow, because of a too high displacement strength.
October 12, 2020, 10:36 (GMT)
Animation: avoid WM notification when nothing changed

Avoid WM notification when a dummy channel is clicked in the animation
channel list (dopesheet, graph editor) if that channel has no animation
data.
October 12, 2020, 10:36 (GMT)
Cleanup: Animation, small cleanups on anim channel selection code

Clean up some code by using early returns.

No functional changes.
October 12, 2020, 10:36 (GMT)
Cleanup: Animation, split `mouse_anim_channels()` into separate functions

Clean up the code that handles mouse clicks on animation channels in the
non-NLA animation editors, by splitting into separate functions.

No functional changes.
October 12, 2020, 10:19 (GMT)
Materials: support the custom uniform attributes in Eevee.

The attributes are provided to the shader via a UBO indexed with
resource_id, similar to the existing Object Info data. Unlike that,
however, it is necessary to maintain a separate buffer for every
requested combination of attributes.

This is done using a hash table with the attribute set as the key,
as it is not inconceivable that technically different materials may
use the same set of attributes. In addition, in order to minimize
wasted memory, a sparse UBO pool is implemented, so that chunks that
don't require that set of data don't have to allocate any memory.

Differential Revision: https://developer.blender.org/D2057
October 12, 2020, 10:19 (GMT)
Materials: add custom object properties as uniform attributes.

This patch allows the user to type a property name into the
Attribute node, which will then output the value of the property
for each individual object, allowing to e.g. customize shaders
by object without duplicating the shader.

In order to make supporting this easier for Eevee, it is necessary
to explicitly choose whether the attribute is varying or uniform
via a dropdown option of the Attribute node. The Cycles design
seems to intend to treat all attributes equally, so the Blender
interface uses a name prefix that can't be entered with keyboard.

Differential Revision: https://developer.blender.org/D2057
October 12, 2020, 10:19 (GMT)
Materials: support true float4 attributes in the Attribute node.

Add a new Alpha socket to the Attribute node that outputs the
fourth component of the attribute. Currently the only such
attribute is vertex color, but there may be more in the future.
If the attribute has no alpha channel, the expected value is 1.
October 12, 2020, 10:19 (GMT)
Cycles: rename uchar4 attribute accessors from 'float4' to 'uchar4'.
October 12, 2020, 10:13 (GMT)
Volumes: use bounding box diagonal to compute adaptive voxel size

Using the diagonal has the benefit, that the adaptive voxel size changes
when the bounding box changes its shape in any way. Having a changing
voxel size looks bad when rendering an animation, therefore one should
usually use a fixed voxel size when rendering an animated volume.
This becomes apparent earlier, when the adaptive voxel size changes
when the bounding box changes in any way.
Otherwise this can easily go unnoticed when rendering only a few frames
of an animated volume.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021