Extra Nodes for GeometryNodes

You know what would be really useful for nodegroup creators in combination with the python api node?


I propose a node to output warning messages to a nodegroup or modifier. It would let nodetree creators output these:
image

I think this is essential for any nodegroup creator creating an asset pack for beginners. What do you think?

I don’t have much experience with python nodes, so I have no idea if it’s possible. Is it?

2 Likes

No
more and more thinks are hardcoded in Cpp in blender nowadays.
i don’t think this information is mod-able via python

1 Like

I got greenlight by Hans that they can be implemented
( i was not sure about the share-ability paradigm. but external references got a pass somehow)

However, 3.0 is bcon3 , so there’s no hurry. I’ll do the patch later :slight_smile:
I removed the input nodes from github and from main post

5 Likes

Here
https://developer.blender.org/D13058

Waiting for review :slight_smile:

4 Likes

By typing python code :slight_smile: This node is for advanced users who know a bit of python.
if you’d like some tips, enable the developper tooltip, you will see the api of properties when hovering them.

2 Likes

This is a very demanded feature, that was removed for controversial reasons during the port of the field prototype to the actual final implementation, please check this topic Named Attribute Nodes in Blender 3.0

after using Geometry Node of 3.0 extensively, I can’t agree more with my past statement about the removal. The new named attributes access is just so awkward to work with, it is also very inconvenient for studios trying to establish their own pipeline

Can the Object Info node act as both of your object & collection nodes? It is necessary to have both of these nodes you made? Image input node seems good to me though.

No they are two separate node,
i am still working on the patch, it seems to work except very specific issues, i will have time later this month to sumbit the patch :slight_smile:

1 Like

Look at what amazing optimizations this can bring for everyone:

When I scrub the timeline, the subdivision level decreases, but when I let go, the subdivision resets. This lets animators get a good preview of the animation and a good preview of the model quickly without changing settings rapidly. Geometry Nodes + a little Python is the future of rigging!

20 Likes

Woah, that is really cool! Just had a play with it, and you can also use bpy.context.screen.is_animation_playing for even more optimisation.

It’s really weird seeing the viewport become buttery smooth as soon as you start the animation :smiley:

27 Likes

Hi, I tried to create a sound falloff node. But not perfect now. Hope anyone can give me some suggestions.

Now the sound falloff node can work with Sequencer Volume Node.
Support gravity and bounce.

6 Likes

When use extra nodes, I found an issue.
Blender will crash easily when press CTR + Z.

sadly, from what i heard custom node groups python api are still broken in 3.0 :sweat_smile: I do not have a lot of time to check for the issue recently, but i perhaps forgot to add ‘UNDO’ support in the operator class somewhere

I found only Sequencer Volume Node has this issue,
and if not use evaluate_sequencer_volume method, blender will not crash.

Hello BD3D, I am super excited about your “Sequencer Volume” node. I tried using it and I ran into a slight issue that you probably know the solution to.

In your video, when you play the sound in the ‘video sequencer editor’, the volume on the top right under ‘sound’ changes.

When I play a sound, that volume number remains static, working like a volume on say a YT video.
Is there a simple option somewhere to change how that works, or is it because I havent installed your add on correctly.


Second question, I would be interested in a similar Node for the Shader Editor too. Does that exist, and if not would that be something that would be easy to duplicate from this Node?

Hi,
I was trying to figure out a way to deform custom normals (taken from static-baked VCol, due to not being supported yet), which seems relatively futile, probably due to lack of experience in vector math.
But would it be feasible to attempt adding Custom Normal field node with slightly above beginner Python knowledge? Can mesh.loops be within python scope if executed from nodes?

Hi @BD3D,

Firstly, great job working on these custom Geometry Nodes! Not only do I see they are helpful, but your code has helped me to create my own custom GeoNodes too. So thank you!

As mentioned, I’ve been using this/your approach to create custom nodes. However, I have an issue with my custom nodes I feel you may be able to help me with. I know this is not exactly the correct way to approach you about such matters, but I wasn’t sure of how else to do it. If there is a more appropriate platform/forum, please let me know.

Simply:
I have NodeGroupA, which has its “update” method triggered by the “bpy.app.handlers.frame_change_pre” event handler. This works fine.

I have NodeGroupB, which contains an instance of NodeGroupA (created via “ng.nodes.new(“ID_NAME”)”). It seems as though the instance of NodeGroupA within NodeGroupB is not receiving the call to its “update” function.

Any ideas? Is there a better way to reach out to you in order to discuss and share some example code?

Thanks!

Hi
glad to know i was helpful :slight_smile:

How do you send your update signal?
I would suggest:

for ng in bpy.data.node_groups:
    if ng.startswith("NodeGroupA"): #so you also support dupplicates
        ng.my_update_function()

I think centralizing “how to make custom node groups info” here is fine
But one thing is certain it’s all smoke and mirror compared to a proper C++ implementation

1 Like

Thanks @BD3D,

I’ve opened a thread named “How To Extend: GeometryNodeCustomGroup”. Hopefully, there, we can talk a little more about the details.

I should provide some code to demonstrate my predicament, I know, but I’ve not had time to allow myself to do that yet. I imagine within the next day or two I can.

The “ng.startswith(“NodeGroupA”)” is a very good idea! However, I feel I may need to review a more elaborate demo in order to fully comprehend your idea. I feel I get it, I don’t have time right now to test, but it feels very good! :stuck_out_tongue:

Thanks!

Have you thought about making more nodes? I won’t use py,I want an expression node, although I have suggested it, but it seems that they are not made

Have you thought about making more nodes? I won’t use py,I want an expression node, although I have suggested it, but it seems that they are not made

You have a mockup?



Simple expression function node (floating point type) (blender.community)
Two models are provided, along with functionality application links

3 Likes