This is quite useful. Thanks for sharing. I can imagine from here it will be quite easy to automate the process with a python script that converts all the shape keys into vector attributes
This is a really good solution! Thanks a lot!
Still not really elegant in terms of design and access to object data from Geometry Nodes.
Let’s hope to see it in future))
With the development of the simulation part of geometry nodes, would it be a good time to reconsider adding some warnings or safeguards against situations that will risk taking down Blender? Simply dropping a subdivision surface node in a simulation will hang or crash Blender within a few seconds.
I’ve been thinking about this for a while, it’s not an easy problem to solve. Adding generic warnings is cheap of course, but won’t help with actual situations where node inputs are the result of a math operation (divide by small number), where nodes are hidden inside a group or linked from another blend file, when users make a simple mistake (type one more zero than you wanted).
There would have to be a way for users to interrupt node execution somewhat reliably. The only way to actually force a process to stop is, afaik, through the operating system and it would have to run as a separate process. That would be a major headache and comes with all sorts of implications regarding inter-process communication, cleanup, etc.
The better alternative, and IMO the only viable solution, would be to stop node execution cooperatively. That means setting a “cancellation token” and then expecting functions to check this periodically and abort within a reasonable time frame. Another problem is how to do this with 3rd party libraries that don’t make it easy to inject such cancellation code, but at least for Blender’s own functions it may be possible. Still a lot of work, so i wouldn’t expect it to happen over night.
Maybe if you place a node that alters enough things (maybe even have certain conditions be evaluated when placing such a node) it will trigger a popup telling you that “The following node could trigger unexpected results, your node has been placed in a muted state”, your new node is added to the tree but in a muted state which would help in stopping you from accidentally killing the tree with a node,
This would be nice because sometime if you have lots of nodes you could miss certain nodes or forget about them and placing a new one which could potentially cause issues kind of stops is from completely either crashing blender or freezing the app forever.
Ofc, this could be on/off in the menu if you don’t like it
Is there a plan for letting users make custom nodes? Like Houdini’s “Point Wrangler”.
I understand: 1) writing custom nodes in python might be too non-performant. 2) Blender has C++ API for custom nodes.
But it’s just… way, way too tedious. It’s in the developers’ realm, not the users’. No matter how advanced a Blender user is, modifying C++ and building/maintaining their own version of Blender is still crazy amount of work.
In Houdini it’s this easy:
[image removed]
Just add a point wrangler node and write some VEX code, all without leaving Houdini. And the performance is unbelievably good.
If Blender is serious about procedural modeling, it really needs something similar. It doesn’t have to be Python, it doesn’t have to be VEX, but it has to be something.
The problem in blender is add node… and again… and again … and again also some node can be compiled in one node with some checkbox for activate the function area…
Hi, I’ve been hoping for one of the nodes in limbo, grouped statistics, to be merged soon. I have found no workaround for a particular case I’m trying to crack, and reading the task I understand lists are holding it off. https://developer.blender.org/D13547
Are lists just about to get implemented? if not, and they’re still some time away, could grouped statistics be considered for inclusion in the meantime? I assume several nodes are likely to be changed to use lists whenever these come, yet they’re useful in their current state, without lists : join geometry, switch, etc. I’m sure it would also be the case for statistics.
There was an idea to add a group to the calculation design. That is, it will be something more fundamental than just transferring all nodes to another socket …