Search Issue Tracker
Won't Fix
Votes
2
Found in
2021.3.37f1
Issue ID
UUM-69926
Regression
No
[iOS] Stacked camera does not render when using post effects
How to reproduce:
1. Download and open the attached project
2. Change the target platform to iOS
3. Enter Play mode
4. Observe the Game view window
Expected outcome: The text floats around the screen
Actual outcome: The text instead blends with itself
Reproducible with: 2021.3.37f1, 2022.3.25f1, 2023.2.19f1, 2023.3.0b10, 6000.0.0b15
Reproduced on: macOS Sonoma 14.4.1 (Apple M1 Max)
iPhone 12 Pro (iOS 14.2.1)
Note: Does not reproduce if platform is not set to iOS.
Note: Workaround in https://forum.unity.com/threads/how-can-i-camera-with-post-fx-and-a-stacked-camera.1571611/ does not work when platform is set to iOS
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
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Resolution Note:
There are two issues with user's script code
1. CameraEvent.BeforeDepthTexture event is used to add command buffer. This is used only when Camera's depth texture used, and the usual case it is implicitly done is when cascaded shadows are used; since they are disabled on iOS by default, this never triggers (this can be confirmed by enabling cascaded shadows in iOS Graphics Tiers settings)
2. After the fix above, the rendering in Editor will still be broken. In Command Buffer Blit(rt, null) is used, but setting camera targetTexture to null does not guarantee we are rendering to the actual backbuffer, so the blit needs to be changed to
Blit(rt, BuiltinRenderTextureType.CurrentActive);