ShaderGraph Grouping and Organization

Hi,

I have a few small suggestions for features in ShaderGraph which I think could be useful.

1. Ability to group other groups and nodes
Example: Being able to create a group that contains both “Get Top Position” and “Get Normalized UVs”

2. Being able to choose “Create Node” organization levels for custom sub graphs (and in future, CodeFunctionNode)
Example: Being able to choose a new grouping so instead of “Sub Graphs > CustomSubGraph” you can place it in “MyCustomGroup > MyCustomSubGroup > CustomSubGraph”
5110046--504299--upload_2019-10-26_17-23-4.png

3. Ability to choose model shown in custom sub graph view. Maybe model chosen in main preview should be used in the instance’s view or have sub graph settings.
Example: We can choose model shown in main preview but when using a custom subgraph node, the sphere model is shown.


5110046--504320--upload_2019-10-26_17-53-17.png

4. Shader graph routing nodes for node link organization (like Unreal Engine’s reroute node)
Example: Look at Unreal Engine’s reroute node (the two blue circles in the center)

1 Like

The second request is already possible. On the blackboard, it you double click the text underneath the SubGraph name you can add a custom path.

The other items are already logged on our request board, but we can’t give any estimate. c:

3 Likes

I believe organizing is the critical thing in the visual editors for readability and reusability. Another feature should be added is the aligning multiple nodes in each other. I don’t know if I can contribute to the Shader Graph, but I’d like to! I already did some aligning options in a custom GraphView editor, and I can happily implement this (or other little things) to the Shader Graph!

1 Like

You can create forks and pull requests to the Shader Graph tool inside of the Scriptable Render Pipeline repository on GitHub.

2 Likes

Oh I just posted on this forum requesting rrerout nodes, I think they are really useful and hope they’ll come soon

I am a new developer and trying to assess what best practice is with shadergraph. I have a game object which can have many things happen such as (heats up, cracks, dissolves, etc.), is it better to have all of these effects in one shadergraph or use a script to change shaders? What is best practice? Thank you in advance.

1 Like

I would always prefer using the GPU over the CPU, but if your graph is gonna look like a mess, it may be better to change the material trough script.

Also the shader compilation time and complexity may increase if you have a mess of a graph.

Hi,

To my knowledge, there is no way to get the textures count out of a Texture 2D Array node.
Could it be added please ?