Blender Git Commits

Blender Git "master" branch commits.

Page: 4 / 5574

December 27, 2021, 18:51 (GMT)
GPencil: Fix error in previous Cleanup

December 27, 2021, 18:16 (GMT)
Cleanup: Use vector function
December 27, 2021, 17:31 (GMT)
Cleanup: Store cursor location in tGPspoint as an array

Fixes many instances of `-Wstringop-overread` warning on GCC 11

Differential Revision: https://developer.blender.org/D13672
December 27, 2021, 17:18 (GMT)
Cleanup: clang tidy

Use c++ headers; use nullptr; redundant `void` in parameter list;
inconsistent parameter name.
December 27, 2021, 16:26 (GMT)
Render: move editor/render module to c++

Doing this in preparation for some work on asset preview generation.

Differential Revision: https://developer.blender.org/D13676
December 27, 2021, 16:21 (GMT)
Fix T93941: geometry proximity breaks with high resolution mesh

The calls to `.fill` were overwriting indices that are processed by
other threads.
December 27, 2021, 15:35 (GMT)
OpenSubDiv: add support for an OpenGL evaluator

This evaluator is used in order to evaluate subdivision at render time, allowing for
faster renders of meshes with a subdivision surface modifier placed at the last
position in the modifier list.

When evaluating the subsurf modifier, we detect whether we can delegate evaluation
to the draw code. If so, the subdivision is first evaluated on the GPU using our own
custom evaluator (only the coarse data needs to be initially sent to the GPU), then,
buffers for the final `MeshBufferCache` are filled on the GPU using a set of
compute shaders. However, some buffers are still filled on the CPU side, if doing so
on the GPU is impractical (e.g. the line adjacency buffer used for x-ray, whose
logic is hardly GPU compatible).

This is done at the mesh buffer extraction level so that the result can be readily used
in the various OpenGL engines, without having to write custom geometry or tesselation
shaders.

We use our own subdivision evaluation shaders, instead of OpenSubDiv's vanilla one, in
order to control the data layout, and interpolation. For example, we store vertex colors
as compressed 16-bit integers, while OpenSubDiv's default evaluator only work for float
types.

In order to still access the modified geometry on the CPU side, for use in modifiers
or transform operators, a dedicated wrapper type is added `MESH_WRAPPER_TYPE_SUBD`.
Subdivision will be lazily evaluated via `BKE_object_get_evaluated_mesh` which will
create such a wrapper if possible. If the final subdivision surface is not needed on
the CPU side, `BKE_object_get_evaluated_mesh_no_subsurf` should be used.

Enabling or disabling GPU subdivision can be done through the user preferences (under
Viewport -> Subdivision).

See patch description for benchmarks.

Reviewed By: campbellbarton, jbakker, fclem, brecht, #eevee_viewport

Differential Revision: https://developer.blender.org/D12406
December 27, 2021, 15:15 (GMT)
Nodes: Support linking to existing group input from link drag search.

Before one could only create a new group input using the link drag search.
With this patch it becomes possible to create a Group Input node for an
existing input.

Differential Revision: https://developer.blender.org/D13674
December 27, 2021, 15:08 (GMT)
BLI: add utility to check if type is any specific type

This adds `blender::is_same_any_v` which is the almost the same as
`std::is_same_v`. The difference is that it allows for checking multiple
types at the same time.

Differential Revision: https://developer.blender.org/D13673
December 27, 2021, 14:41 (GMT)
Allocator: add missing include

The placement-new operator requires `#include <new>`.
It is used in `MEM_new`.
Revision 7cf5f4c by YimingWu
December 27, 2021, 06:33 (GMT)
LineArt: Protecting bounding area links.

In case they overflowed the bounding area maximum link count,
Protect the link array so it doesn't crash.
Revision 52585b3 by YimingWu
December 27, 2021, 06:22 (GMT)
LineArt: Remove duplicated edge-boundbox linking.

The edge is linked twice from differen calls during line art calculation
Probably caused by a merge and both calls stayed for some reason.
This would lead to edge link overflowing its limit of 2^16 items.
December 26, 2021, 20:08 (GMT)
Cleanup: Fix compile warning

Own mistake in rB67525b88d2e
December 26, 2021, 20:08 (GMT)
Cleanup: Use array for BKE cursor functions

Missed this function in rB67525b88d2e
December 26, 2021, 12:45 (GMT)
Fix T94387: Mesh sequence cache, crash when clicking a panel

The crash happens when opening a panel (added in rB43f5e761a66e87fed664a199cda867639f8daf3e)
when no CacheFile is set in the modifier.

To fix this, check that the CacheFile pointer is not null before attempting to draw anything.
Revision dd3a72f by Hans Goudey
December 25, 2021, 21:08 (GMT)
Docs: Add to and cleanup attribute API docs

Most of the comment block is similar to the text in the source
code documentation wiki. It's helpful to have some text in
a header file too, so it's closer for programmers already looking
at the code.

This also uses more consistent syntax and wording in the comments
about the attribute API in `GeometryComponent`.

Ref T93753

Differential Revision: https://developer.blender.org/D13661
Revision ceed8f7 by Hans Goudey
December 25, 2021, 20:57 (GMT)
Cleanup: Use more common variable name

It's preferred to use `area` as a name for `ScrArea` variables.
Revision 85abac7 by Hans Goudey
December 25, 2021, 20:28 (GMT)
Cleanup: Move customdata.c to C++

Differential Revision: https://developer.blender.org/D13666
December 25, 2021, 19:58 (GMT)
Breakdown Implementation

This patch adds the breakdown (or tween) functionality to the graph editor.

The factor defines the linear interpolation from left key to right key.

Reviewed by: Sybren A. St�vel
Differential Revision: https://developer.blender.org/D9375
Ref: D9375
December 25, 2021, 16:13 (GMT)
Shader Nodes: Convert bump node to use new socket builder

This node is a bit special in that it uses two internal sockets
for a hack for Eevee; see rBffd5e1e6acd296a187e7af016f9d7f8a9f209f87

As a result, the `SOCK_UNAVAIL` flag is exposed to socket builder API.

Reviewed By: JacquesLucke, fclem

Differential Revision: https://developer.blender.org/D13496
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021