Search Issue Tracker
Feature Request
Votes
0
Found in
2022.1.24f1
2022.2.2f1
2023.1.0a24
Issue ID
UUM-21860
Regression
No
Lightmap GI Alpha Clipping undocumented, inconsistent and not fully functional with custom shaders
Reproduction steps:
1. Open the attached project “LightmapBug”
2. Open “Assets/TestScene” Scene
3. Open Window → Rendering → Lighting window
4. In the Lighting window press the “Generate Lighting” button
5. Wait for the lights to complete baking
6. Inspect the Scene view
Expected result: All three lights are baked similarly
Actual result: Some lights are baked differently from others that are using different materials with similar behavior
Reproducible with: 13.1.9 (2022.1.24f1), 14.0.4 (2022.2.2f1), 15.0.2 (2023.1.0a24)
Couldn’t test with: 10.10.1 (2020.3.43f1), 12.1.8 (2021.3.16f1) - The lights are not generated because of downgraded Shader Graphs
Reproducible on: macOS 13.0.1 (Intel), Windows 10
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
- Articulation Body with 'Revolute' Joint Type has erratic behavior when Upper Limit is set to above 360
- WebGL Player fails to render Scene when Terrain with Detail Mesh is added and WebGPU Graphics API is used
- Inconsistent errors are logged when different types are passed into the Query "Q<>" method in UIToolkit and the ancestor VisualElement is null
- Crash on GetMaterialPropertyByIndex when opening a specific Scene
- Discrepancies in the styling are present when using a TSS file instead of a USS file in custom EditorWindow
Resolution Note:
The documentation on this functionality is indeed lacking. We plan to improve this and have the work tracked internally. Although this is a valid issue, we do not track documentation improvements via this channel.
As for the comment about alpha clipping "not working as intended because any calculation inside the shader is being ignored", while this is true, it isn't unintended behavior. The lightmapper supports transparency by generating its own set of transparency textures, based on the material inputs. This is done in order to avoid having to evaluate arbitrary user shaders during baking. Thus, it only supports a limited form of transparency. We'd like to make this behavior more clear and intuitive to use in the future, and we may for example expand the MetaPass (which is invoked just before baking) to also render out alpha, but we have no intention of ever evaluating user shaders during the bake process itself.