-
Notifications
You must be signed in to change notification settings - Fork 861
[10.x.x] Universal/shader quality #17
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
Conversation
phi-lira
left a comment
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.
We need to add a doc page to explain the quality settings and what are they enabling/disabling.
We also need to do shader stripping based on quality so we avoid doing 3x shaders in most cases.
com.unity.render-pipelines.universal/Editor/UniversalRenderPipelineAssetEditor.cs
Outdated
Show resolved
Hide resolved
com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs
Show resolved
Hide resolved
com.unity.render-pipelines.universal/Runtime/Data/UniversalRenderPipelineAsset.cs
Show resolved
Hide resolved
com.unity.render-pipelines.universal/Runtime/Passes/MainLightShadowCasterPass.cs
Outdated
Show resolved
Hide resolved
com.unity.render-pipelines.universal/Runtime/ScriptableRenderer.cs
Outdated
Show resolved
Hide resolved
com.unity.render-pipelines.universal/ShaderLibrary/UnityInput.hlsl
Outdated
Show resolved
Hide resolved
com.unity.render-pipelines.universal/ShaderLibrary/ShaderQuality.hlsl
Outdated
Show resolved
Hide resolved
com.unity.render-pipelines.universal/ShaderLibrary/ShaderQuality.hlsl
Outdated
Show resolved
Hide resolved
com.unity.render-pipelines.universal/ShaderLibrary/Shadows.hlsl
Outdated
Show resolved
Hide resolved
com.unity.render-pipelines.universal/ShaderLibrary/Lighting.hlsl
Outdated
Show resolved
Hide resolved
|
LGTM. Made minor comments and asked docs/shader stripper. |
martint-unity
left a comment
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.
Thanks :) That was fast. :)
Purpose of this PR
Why is this PR needed, what hard problem is it solving/fixing?
The shader quality solves the problem of creating some predefined tiers for the shader to work with without being platform specific if the user want to change the tier on fx. mobiles.
I'm also adding shadow fading which uses the shader tiers to set which tier should allow shadow fading. The shadow fading is implemented to gradually fade out the shadows such that the user don't see a hard line where there is and isn't any shadow.
Testing status
I build a game example with an empty shader cache to see if the stripping made the shader cache smaller if shader qualities were left out and also checked if the other qualities than the starting quality worked correctly to make sure there weren't any unintentional stripping that occurred.
I have added the test 131_ShadowFading
Manual Tests: What did you do?
Automated Tests: What did you setup? (Add a screenshot or the reference image of the test please)
Yamato: (Select your branch):
https://yamato.prd.cds.internal.unity3d.com/jobs/78-ScriptableRenderPipeline
Any test projects to go with this to help reviewers?
Comments to reviewers
Notes for the reviewers you have assigned.