Cleanup: Make Accumulate Attribute node more generic #104440

Merged
Hans Goudey merged 24 commits from mod_moder/blender:accumulate_generic_new into main 2023-05-08 20:36:18 +02:00

24 Commits

Author SHA1 Message Date
Iliya Katushenock 85354d6585 Merge branch 'accumulate_generic_new' of projects.blender.org:mod_moder/blender into accumulate_generic_new 2023-05-08 20:33:51 +03:00
Iliya Katushenock ea7cb1c389 fix conflict 2023-05-08 20:33:15 +03:00
Iliya Katushenock af00d170ba Merge branch 'main' into accumulate_generic_new 2023-04-01 22:58:07 +02:00
Iliya Katushenock 8268b3780d Merge branch 'main' into accumulate_generic_new 2023-03-01 20:56:37 +01:00
Iliya Katushenock 3d303db5c9 Merge branch 'main' into accumulate_generic_new 2023-02-26 11:15:24 +01:00
Iliya Katushenock 0378028c85 Merge branch 'main' into accumulate_generic_new 2023-02-11 17:17:38 +01:00
Iliya Katushenock e2e5ca83da fix! 2023-02-08 19:49:19 +03:00
Iliya Katushenock 3328226330 try 4 2023-02-08 19:13:52 +03:00
Iliya Katushenock 4037b34486 checkout wrong changes 2023-02-08 18:21:27 +03:00
Iliya Katushenock 09599edf4b Merge branch 'main' into accumulate_generic_new 2023-02-08 18:08:49 +03:00
Sergey Sharybin 4390013458 Make update: Ignore submodules
The previous change in the .gitmodules made it so the `make update`
rejects to do its thing because it now sees changes in the submodules
and rejected to update, thinking there are unstaged changes.

Ignore the submodule changes, bringing the old behavior closer to
what it was.
2023-02-08 17:07:49 +03:00
Sergey Sharybin a212d28ddf Un-ignore modules in .gitmodules configuration
The meaning of the ignore option for submodules did change since our
initial Git setup was done: back then it was affecting both diff and
stage families of Git command. Unfortunately, the actual behavior did
violate what documentation was stating (the documentation was stating
that the option only affects diff family of commands). This got fixed
in Git some time after our initial setup and it was the behavior of the
commands changed, not the documentation. This lead to a situation when
we can no longer see that submodules are modified and staged, and it is
very easy to stage the submodules.

For the clarity: diff and status are both "status" family, show and
diff are "diff" family.

Hence this change: since there is no built-in zero-configuration way
of forbidding Git from staging submodules lets make it visible and
clear what the state of submodules is.

We still need to inform people to not stage submodules, for which
we can offer some configuration tips and scripts but doing so is
outside of the scope of this change at it requires some additional
research. Current goal is simple: make it visible and clear what is
going to be committed to Git.

This is a response to an increased frequency of incidents when the
submodules are getting modified and committed without authors even
noticing this (which is also a bit annoying to recover from).

Differential Revision: https://developer.blender.org/D13001
2023-02-08 17:07:49 +03:00
Sergey Sharybin c92cae64fb Fix references to the main branch in the .gitmodules 2023-02-08 17:07:49 +03:00
Alexander Gavrilov b6d83c0aaa Subdivision Surface: fix a serious performance hit when mixing CPU & GPU.
Subdivision surface efficiency relies on caching pre-computed topology
data for evaluation between frames. However, while eed45d2a23
introduced a second GPU subdiv evaluator type, it still only kept
one slot for caching this runtime data per mesh.

The result is that if the mesh is also needed on CPU, for instance
due to a modifier on a different object (e.g. shrinkwrap), the two
evaluators are used at the same time and fight over the single slot.
This causes the topology data to be discarded and recomputed twice
per frame.

Since avoiding duplicate evaluation is a complex task, this fix
simply adds a second separate cache slot for the GPU data, so that
the cost is simply running subdivision twice, not recomputing topology
twice.

To help diagnostics, I also add a message to show when GPU evaluation
is actually used to the modifier panel. Two frame counters are used
to suppress flicker in the UI panel.

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

Pull Request #104441
2023-02-08 17:07:49 +03:00
Campbell Barton 3df680e362 Cleanup: use enum literals, order likely case first in polyfill_2d 2023-02-08 17:07:49 +03:00
Campbell Barton a577663ed9 Fix #103913: Triangulate sometimes creates degenerate triangles
The ear clipping method used by polyfill_2d only excluded concave ears
which meant ears exactly co-linear edges created zero area triangles
even when convex ears are available.

While polyfill_2d prioritizes performance over *pretty* results,
there is no need to pick degenerate triangles with other candidates
are available. As noted in code-comments, callers that require higher
quality tessellation should use BLI_polyfill_beautify.
2023-02-08 17:07:48 +03:00
Lukas Stockner 753aa473a2 Cleanup: format 2023-02-08 17:07:48 +03:00
Hans Goudey d1ffb49cb9 Fix #104297: Cycling geometry nodes viewer ignores sockets
Sockets after the geometry socket were ignored when cycling through
the node's output sockets. If there are multiple geometry sockets, the
behavior could still be refined probably, but this should at least make
basic non-geometry socket cycling work.
2023-02-08 17:07:48 +03:00
Hans Goudey 497cf6ca74 Cleanup: Move 18 sculpt files to C++
To allow further mesh data structure refactoring. See #103343

Pull Request #104436
2023-02-08 17:07:48 +03:00
Brecht Van Lommel 8c614debee Release: support generating LTS release notes from Gitea
Now a single script to generate both links and release notes. It also includes
the issue ID for the LTS releases, so only the release version needs to be
specified.

Pull Request #104402
2023-02-08 17:07:48 +03:00
Iliya Katushenock dc46826007 changes based on comments 2023-02-08 17:01:02 +03:00
Iliya Katushenock 9621f361cb undo changes in wrong branch 2023-02-08 16:59:57 +03:00
Iliya Katushenock a5500c2e47 changes based on comments 2023-02-08 16:52:52 +03:00
Iliya Katushenock ae068ad23c re init
buildbot/vexp-code-patch-coordinator Build done. Details
2023-02-07 23:41:23 +03:00