Blender Git Loki

Kaikki Blender Git kommitit.

Page: 751 / 8462

April 8, 2021, 06:57 (GMT)
Added missing function body.
April 8, 2021, 06:36 (GMT)
Fix T87267: Texture Paint stencil texture not drawing

Typo in {rBafcfc6eb0842}.

Maniphest Tasks: T87267

Differential Revision: https://developer.blender.org/D10915
April 8, 2021, 05:49 (GMT)
Cavity masking now has a checkbox in the UI, instead of simply turning
itself on if the concave mask factor is > 0.
April 8, 2021, 05:39 (GMT)
Geometry Nodes Curves: Refactor, mapping from evaluated to control points

Also include some incomplete handling of radius in the curve to mesh node.
I'm not sure how much of the changes will stick around, but the reshuffling
of virtual vs. final methods will stay, and the separated caches probably
makes sense too.
April 8, 2021, 03:39 (GMT)
* Fixed an annoying number of undo bugs
* Original data for bmesh pbvh is no longer handled by the undo code.
This should eliminate a whole class of subtle and hard to track down
bugs.
April 8, 2021, 02:45 (GMT)
Merge branch 'master' into geometry-nodes-curve-support
April 8, 2021, 00:15 (GMT)
USD Export: texture export options.

Added Export Textures and Relative Texture Paths options.
April 7, 2021, 21:03 (GMT)
Fix T87274: Curve 2D resets to 3D on reload

This code is incompatible with .blend files from subversion 16 and 17.

The ideal would be to create a new subversion when landed rBf674976edd88.

But for now, due to the delay, moving the code to the previous subversion
can solve it.
Revision 79ba4fd by Hans Goudey (master)
April 7, 2021, 20:49 (GMT)
Cleanup: Rename function, switch order of arguments

The function name was not very specific, this makes it clearer that it
works on instances rather than only real geometry. Also use `r_`
prefix for the return argument.
Revision 1a8db9e by Hans Goudey (master)
April 7, 2021, 18:23 (GMT)
Geometry Nodes: Rename grid output UV attribute

During review of D10730 it was discovered that the "uv" name causes
issues for cycles, which uses it as a default internal data name. While
that could be fixed in the future, there was no particular reason to use
"uv" instead of "uv_map", so we use the latter instead here, which
is consistent with the lowercase naming scheme chosen for attributes.
Revision 22ba85b by Hans Goudey (master)
April 7, 2021, 18:15 (GMT)
Geometry Nodes: Greatly improve speed of some mesh primitives

Some of the BMesh primitive operators have a lot of overhead due to the
fact that they use other operators like extrusion, removing doubles,
and rotation, to build each shape rather than filling arrays directly.

Implementing the primitives directly with the Mesh data structure is
much more efficient, since it's simple to fill the result data based
on the known inputs. It also allows also skip the conversion from BMesh
to Mesh after the calculations.

Speed matters more for procedural operations than for the existing
operators accessible from the add menu, since they will be executed
every evaluation rather than once before a destructive workflow.

| Shape | Before (ms) | After (ms) | Speedup (x times faster) |
| -------- | -------------| ------------| -------------------------|
| Cylinder | 1.1676 | 0.31327 | 3.72 |
| Cone | 4.5890 | 0.17762 | 25.8 |
| Sphere | 64213.3 | 13.595 | 4720 |

The downside of this change is that there will be two implementations
for these three primitives, in these nodes and in `bmo_primitive.c`.
One option would be re-implementing the BMesh primitives in terms of
this code, but that would require `BMesh` to depend on `Mesh`, which
is currently avoided. On the other hand, it will be easier to add new
features to these nodes like different fill types for the top and the
bottom of a cylinder, rings for a cylinder, and tagging the output with
boolean attributes. Another factor to consider is that the add mesh
object operator could be implemented with these nodes, just providing
more benefit for a faster implementation.

As a future cleanup, there is room to share code that generates the
"rings" topology between different nodes that generate meshes.

Differential Revision: https://developer.blender.org/D10730
April 7, 2021, 16:44 (GMT)
Fix T87263: Animation decorator not working on Grease Pencil Build modifier Factor value

When having a checkbox and a value both in one row together with an
animation decorator it is questionable whether the decorator should act
on animating the checkbox or the corresponding value. At the moment,
usage in modifiers does not seem to be very consistent:

Here the animation decorator works for animating the checkbox:
- `Build` (greasepencil) > `Factor` (this was reported and is changed in
this patch to act on the value instead of the checkbox)
- `DataTransfer` > `Topology Mapping` > `Max Distance` (this I guess
should also act on the value instead of the checkbox)
- `Edge Split` > `Edge Angle` (questionable)
- `Mirror` > `Merge` (questionable)
- `Screw` > `Merge` (questionable)
- `Wireframe` > `Crease Edges` (questionable)

Here the animation decorator works for animating the value:
- `VertexWeightEdit` > `Group Add/Remove Threshold`
- `Decimate` > `Symmetry`

So in this patch only the behavior in the greasepencil Build modifier UI
is changed, since I think it is quite obvious that one would more often
use the decorator for animating the factor value than for animating the
checkbox.

Maniphest Tasks: T87263

Differential Revision: https://developer.blender.org/D10910
April 7, 2021, 16:43 (GMT)
Cleanup: rename IntegratorPathQueue for clarity

It's only counting the queue sizes, it's not the actual queue.
April 7, 2021, 16:43 (GMT)
Cleanup: allocate active path arrays once in advance

In practice the size of this matches the max path states anyway, avoiding
reallocation in the middle of queueing kernels will simplify some things
later.
April 7, 2021, 16:43 (GMT)
Cycles: add debug logging for CUDA device queue
April 7, 2021, 16:43 (GMT)
Cycles: allocate Scene in Session, pass DeviceScene to path trace work

Needed for shader sorting.
April 7, 2021, 16:43 (GMT)
Cycles: disable megakernel for now, see code comments
April 7, 2021, 16:43 (GMT)
Cycles: add shader sorting for shade_surface kernel

* intersect_closest and intersect_subsurface compute a sorting key and with
atomics count how many paths are queued for each key.
* Then we compute the prefix sum of the sorting keys, and use that for sorting
paths according to the key in a single pass with atomics.
April 7, 2021, 16:18 (GMT)
Cycles: Bring OptiX denoiser back

Basically putting old code to be used by the new denoiser
implementation in the integrator.

The main denoising function in the OptiXDevice was split,
to make it easier to follow and understand what's going on.

The current limitation is that currently it only works when
rendering on the OptiX device. Attempts to render on CPU and
denoise on OptiX will currently error out (error is printed
to the console, denoising is not run). This will be worked
on next.
April 7, 2021, 16:04 (GMT)
UI: Remove confusing "Unset" context menu entry

This was added in 37b82a2d260e, doesn't have much purpose and doesn't even do
anything in the vast majority of cases. It only affects custom properties. So
at the very least it shouldn't be shown for regular RNA property buttons. But
even for cases where it may do something, we couldn't find a good use-case. If
this operator has use-cases with some add-ons, the add-ons can expose it
differently, e.g. with a little 'x' icon next to the button, like it's done in
the keymap editor.

So removing the context menu entry now. Should this turn out to be a problem,
it can be brought back but much more selectively (only where it actually does
something). Or we could combine it with "Reset to Default".

Differential Revision: https://developer.blender.org/D8727

Reviewed by: Brecht Van Lommel, Hans Goudey
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021