Search Unity

Feature Request ShaderGraph Grouping and Organization

Discussion in 'Shader Graph' started by Jonathan_L, Oct 26, 2019.

  1. Jonathan_L

    Jonathan_L

    Joined:
    Jan 26, 2016
    Posts:
    43
    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"
    upload_2019-10-26_17-17-47.png


    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"
    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.
    upload_2019-10-26_17-52-59.png
    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)
     
    Last edited: Oct 26, 2019
    JotaRata likes this.
  2. alexandral_unity

    alexandral_unity

    Unity Technologies

    Joined:
    Jun 18, 2018
    Posts:
    163
    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:
     
    TeorikDeli, whoisj and Jonathan_L like this.
  3. TeorikDeli

    TeorikDeli

    Joined:
    Apr 6, 2014
    Posts:
    150
    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!
     
    JotaRata likes this.
  4. alexandral_unity

    alexandral_unity

    Unity Technologies

    Joined:
    Jun 18, 2018
    Posts:
    163
    You can create forks and pull requests to the Shader Graph tool inside of the Scriptable Render Pipeline repository on GitHub.
     
    JotaRata and TeorikDeli like this.
  5. JotaRata

    JotaRata

    Joined:
    Dec 8, 2014
    Posts:
    61
    Oh I just posted on this forum requesting rrerout nodes, I think they are really useful and hope they'll come soon
     
  6. sigil_tech

    sigil_tech

    Joined:
    Sep 18, 2019
    Posts:
    17
    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.
     
    JotaRata likes this.
  7. JotaRata

    JotaRata

    Joined:
    Dec 8, 2014
    Posts:
    61
    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.
     
  8. Alesk

    Alesk

    Joined:
    Jul 15, 2010
    Posts:
    340
    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 ?