Search Issue Tracker
By Design
Votes
3
Found in
2023.1.0a1
2023.2.0a1
Issue ID
UUM-3284
Regression
No
ShaderVariant throws 'ArgumentException: shader pass type 0 does not have a shader snippet' when using AssetBundle
Reproduction steps:
1. Open the attached 'TestShaderVariant' project
2. Open the 'SampleScene'
3. Go to the 'Window -> Asset Management -> Addressables'
4. 'Build -> Clean Build -> All'
5. 'Build -> New Build -> Default Build Script'
6. 'Play Mode Script -> Use Existing Build'
7. Enter Play mode
Expected result: No errors are in the Console
Actual result: 'ArgumentException: shader Unlit/NewUnlitShader pass type 0 does not have a shader snippet' is in the Console
Reproducible with: 2019.4.36f1, 2020.3.30f1, 2021.2.14f1, 2022.1.0b13, 2022.2.0a8
Public Tracker Link:
https://issuetracker.unity3d.com/product/unity/issues/guid/1412344/
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
- PlayerPrefs get corrupted when a minimized fullscreen Player is closed through the Taskbar
- "To Debug, run app with -diag-job-temp-memory-leak-validation cmd line argument. This will output the callstacks of the leaked allocations." warning is printed when JobTempMemoryLeakValidation switch is enabled
- Main Thread stalling when loading Audio Source asset asynchronously while preloading another Audio Source asset
- Material artifacts occur in the Material Preview window when baked lighting is applied to scenes
- “ArgumentOutOfRangeException” after saving, reseting and re-add Default Tile Palette Tools to the list in Preferences window
Resolution Note:
When a shader is part of an asset bundle, there is not enough information for the Editor to do all the checks it normally does (the source asset is missing in this case).
It's best to create those variant collections in the Editor as assets, and not build them at player runtime.