Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 152 / 5574

September 13, 2021, 08:42 (GMT)
Fix T91311: incorrect batch generation for instances

This was a mistake in {rB5a9a16334c573c4566dc9b2a314cf0d0ccdcb54f}.
September 13, 2021, 08:02 (GMT)
Fix T84638: Wrong scale for primitives with radius

Creating some primitives allows for a scale value (via python) that will
scale the object accordingly. For objects with a radius parameter
(like cylinders, spheres, etc.) passing a scale different to (1,1,1)
would result in unexpected behavior.

For example:
`>>> bpy.ops.mesh.primitive_uv_sphere_add(radius=2, scale=(1,1,2))`
We would expect this to create a sphere with a radius of 2
(dimensions 4,4,4) and then be scaled *2 along the z-axis
(dimensions 4,4,8). But this would previously create a scaled sphere
with dimensions (2,2,4).

The scale was simply divided by two. Maybe because the "radius"
parameter for creating the primitives was confusingly named "diameter"
(but used as the radius).

The fix adds a scale parameter to `ED_object_new_primitive_matrix`
and also renames the wrongly named "diameter" parameters to "radius".

Reviewed By: campbellbarton

Maniphest Tasks: T84638

Ref D10093
September 13, 2021, 07:50 (GMT)
Cleanup: clang-format
September 13, 2021, 06:16 (GMT)
GPUShader: Expose name for debugging & identifying shaders

Added optional `name` argument to `GPUShader` constructor
(defaults to `pyGPUShader`), and added `name` getter to `GPUShader`.

Ref D12393

Reviewed By: campbellbarton, jbakker
September 12, 2021, 09:51 (GMT)
Cleanup: early return from smoothview when the view is unchanged
September 12, 2021, 09:51 (GMT)
Cleanup: spelling
Revision 1540568 by Hans Goudey
September 11, 2021, 20:00 (GMT)
Cleanup: Remove no-op/unused code
Revision b9febb5 by Hans Goudey
September 11, 2021, 18:54 (GMT)
Geometry Nodes: Support modifier on curve objects

With this commit, curve objects support the geometry nodes modifier.

Curves objects now evaluate to `CurveEval` unless there was a previous
implicit conversion (tessellating modifiers, mesh modifiers, or the
settings in the curve "Geometry" panel). In the new code, curves are
only considered to be the wire edges-- any generated surface is a mesh
instead, stored in the evaluated geometry set.

The consolidation of concepts mentioned above allows remove a lot of
code that had to do with maintaining the `DispList` type temporarily
for modifiers and rendering. Instead, render engines see a separate
object for the mesh from the mesh geometry component, and when the
curve object evaluates to a curve, the `CurveEval` is always used for
drawing wire edges.

However, currently the `DispList` type is still maintained and used as
an intermediate step in implicit mesh conversion. In the future, more
uses of it could be changed to use `CurveEval` and `Mesh` instead.

This is mostly not changed behavior, it is just a formalization of
existing logic after recent fixes for 2.8 versions last year and two
years ago. Also, in the future more functionality can be converted
to nodes, removing cases of implicit conversions. For more discussion
on that topic, see T89676.

The `use_fill_deform` option is removed. It has not worked properly
since 2.62, and the choice for filling a curve before or after
deformation will work much better and be clearer with a node system.

Applying the geometry nodes modifier to generate a curve is not
implemented with this commit, so applying the modifier won't work
at all. This is a separate technical challenge, and should be solved
in a separate step.

Differential Revision: https://developer.blender.org/D11597
September 11, 2021, 16:07 (GMT)
Calm Warning: Unused Variable

Calms warning for unused variable in `constraint_copy_to_selected_poll`
by using UNUSED_VARS.

See D12453 for further details

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

Reviewed by Campbell Barton
September 11, 2021, 13:42 (GMT)
Compositor: Full frame previews

Adds full frame implementation to PreviewOperation.

Part of T88150.
September 11, 2021, 13:42 (GMT)
Compositor: Fix crash when hashing unconnected operations

It was causing some tests to fail when enabling Full Frame mode.
September 11, 2021, 11:05 (GMT)
Geometry Nodes: add field support for socket inspection

Since fields were committed to master, socket inspection did
not work correctly for all socket types anymore. Now the same
functionality as before is back. Furthermore, fields that depend
on some input will now show the inputs in the socket inspection.

I added support for evaluating constant fields more immediately.
This has the benefit that the same constant field is not evaluated
more than once. It also helps with making the field independent
of the multi-functions that it uses. We might still want to change
the ownership handling for the multi-functions of nodes a bit,
but that can be done separately.

Differential Revision: https://developer.blender.org/D12444
September 11, 2021, 10:41 (GMT)
Cleanup: use nullptr
September 11, 2021, 09:43 (GMT)
Functions: store cursors to previous instructions

Now an instruction knows the cursors where it is inserted instead
of just the instruction that references it. This has two benefits:
* An instruction knows when it is the entry instruction.
* The cursor can contain more information, e.g. if it is linked to the
true or false branch of a branch instruction.

This also simplifies updating the procedure in future optimization
passes.
Revision 6ae8de4 by Hans Goudey
September 11, 2021, 04:21 (GMT)
Cleanup: Rename variables, simplify logic

Mostly renaming the variables to improve line wrapping.
But also the "foreach_attribute" loops look simpler now.
Also use `Spline::copy_base_settings` and don't bother
with an extra call to reallocate the attribute arrays.
Revision d475f99 by Hans Goudey
September 11, 2021, 03:58 (GMT)
Geometry Nodes: Support "Evaluated" mode in Resample Curve node

Just like the curve to points node, this mode outputs point locations
based on the input curve's evaluated points (the points you see in the
viewport). This is expected to be faster, since it doesn't have to
sample equal positions on the result, and it's also consistent with
the existing choices in the curve to points node.
Revision cb83313 by Hans Goudey
September 11, 2021, 03:48 (GMT)
Nodes: Add vector min/max support to new socket builder API

Also use it to fix an incorrect min and max in the cube mesh
primitive node.
September 10, 2021, 21:22 (GMT)
UI: Quad View Option Names Improved

Improvements to Quad View options' titles and descriptions.

See D12381 for more details.

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

Reviewed by Hans Goudey and Campbell Barton
Revision 8745bb9 by Hans Goudey
September 10, 2021, 20:58 (GMT)
Cleanup: Split legacy node type defines
Revision 6a00e7a by Hans Goudey
September 10, 2021, 18:26 (GMT)
Fix: Incorrect file subversion for geometry node versioning

rBe2f99c338bd57 should have used the subversion currently defined
in Blender, instead it used one lower, so some files didn't have the
versioning applied.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021