Search Issue Tracker
Fixed in 12.0.x
Votes
0
Found in [Package]
10.4.0
Issue ID
1337137
Regression
Yes
[Shadergraph] Subgraphs should have different stage limitations for different outputs
Note: despite not technically being a regression due to being a bug with a later introduced feature, this bug will stop you from being able to do things that you can do in 7.x.x due to the fact that there is no stage limitation on subgraphs in that version. The first version this bug reproduces in is 10.4.0.
Repro steps:
1. Copy the attached shadergraph and subgraph into your project
2. Open the shadergraph
3. Try to plug the first output of the subgraph (NormalOut) into the vertex position stack node
Expected result: it lets you (This will work! Because when the shader compiles it will optimize out the part of the function that is not used in that instance. Doing this in 7.x.x where stage limitations on subgraphs doesn't exist yet will result in a shadergraph that compiles.)
Actual result: it blocks you from connecting that output because of the ddx in the subgraph that is connected to the other output
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Prefab override popup is cropped/positioned incorrectly when more than one display is used and a higher display Scale is set
- Opening a dropdown on a small screen results in its instant closing when mouse cursor is pressed where the dropdown is going to be opened
- Only "ArgumentNullException: Value cannot be null" is displayed instead of all the actual errors when opening a project with numerous compilation errors
- MultiColumnListView and MultiColumnTreeView do not change selection on first input when focus is set by code
- SerializedProperty.DataEquals is returning false when SerializedProperty.EqualContents return true
Resolution Note (fix version 12.0.x):
Inputs/Outputs for sub-graphs should now be properly tracked per shader stage.
Additionally, visual errors were added for when a graph/sub-graph enters an invalid stage showing which nodes caused the errors.