-
Notifications
You must be signed in to change notification settings - Fork 792
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Per-stage shader keywords in HDRP #2996
Conversation
# Conflicts: # com.unity.render-pipelines.high-definition/Editor/Material/Decal/ShaderGraph/HDDecalSubTarget.cs # com.unity.render-pipelines.high-definition/Editor/ShaderGraph/HDTarget.cs # com.unity.render-pipelines.high-definition/Editor/ShaderGraph/Nodes/RayTracingNode.cs # com.unity.render-pipelines.high-definition/Runtime/Lighting/LightLoop/DeferredTile.shader # com.unity.render-pipelines.high-definition/Runtime/Material/AxF/AxF.shader # com.unity.render-pipelines.high-definition/Runtime/Material/LayeredLit/LayeredLit.shader # com.unity.render-pipelines.high-definition/Runtime/Material/Lit/Lit.shader
# Conflicts: # com.unity.render-pipelines.high-definition/Runtime/Material/AxF/AxF.shader # com.unity.render-pipelines.high-definition/Runtime/Material/Decal/Decal.shader # com.unity.shadergraph/Editor/Generation/Processors/Generator.cs
* Enable greetings.yaml * Save yml files * Add comments * Add .github folder to codeowners
It appears that you made a non-draft PR! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
(with the TODO fixed)
Adding QA: QA please try to load a project like SpaceShip or Palace, and build a player a check that everything is fine. Thanks |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just made sure that URP still works properly when HDRP is in project.
* Per-stage shader keywords in HDRP -bis #2996 * Fix DX12 alembic test * miss SG * Update LayeredLit.shader
With this PR HDRP will use per-stage keywords what that means is that we can do stuff like
multi_compile_fragment
to have only the fragment shader variant computed. It is very important to define one separate line per stage that needs to include the keyword. This work for both multi compiles and shader_featuresThis is has to be done manually for code shaders (I did a pass on our shaders, being conservative to be safe) and I added a field to have that easily generated in SG.
This reduces the number of compiled shader programs with all the benefits that come from that.
I ran test manually and they pass.