Search Issue Tracker
Fixed in 2020.2.X
Fixed in 2020.3.X, 2021.1.X
Votes
0
Found in
2020.1.0a2
2020.2
2020.2.0b12
2021.1
Issue ID
1298799
Regression
Yes
[iOS] CopyDepth pass is present in the legacy deferred render pipeline and results in extra render target memory and GPU time
How to reproduce:
1. Open the attached 'CopyDepthPass2020.zip'
2. Switch Platform to iOS in Build Settings
3. Build the Xcode project and open it
4. Enable GPU Frame Capture for Metal and set API Validation to Metal in Menu Bar > Product > Scheme > Edit Scheme
5. Deploy Xcode project to an iOS device
6. Capture a frame
Expected result: There is no Copy Depth pass in the legacy deferred render pipeline
Actual result: Copy Depth pass is present in the legacy deferred render pipeline therefore GPU time is added and consumes extra render target memory
Reproducible with: 2020.1.0a2, 2020.1.16f1, 2020.2.0b14, 2020.1.0a10
Not reproducible with: 2018.4.30f1, 2019.4.17f1, 2020.1.0a1
Reproducible with:
iPhone XR (iOS 13.4.1)
iPad 9.7’ 6th gen (iOS 14.2)
Notes:
- Screenshots of the memory captures and frame captures are attached in Edit (CopyDepthPass2019-Memory.png, CopyDepthPass2019-PIpelineState.png, CopyDepthPass2020-Memory.png CopyDepthPass2020-PipelineState.png)
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
- Warning 'Unable to find player assmebly' is thrown when building some Project Templates
- ArgumentOutOfRangeException when manipulating the Project Settings search bar
- [Linux] Touch freezes in Player when any mouse button is clicked
- UnityEngine.Rendering.Volume.OnEnable() is called twice before OnDisable() creating multiple copies of the same volume when a volume is enabled right after Domain Reload when entering Play Mode
- Hinge Joint transforms are reset when toggling the "useMotor" property
Resolution Note (fix version 2020.2):
A CopyDepth pass was previously included which allowed users script access to _CameraDepthTarget but this has been removed on the metal GPU families that use Tile-based renderers (iOS, Silicon-GPU), fixing the performance decrease that this was causing. If shader access to _CameraDepthTarget is necessary, users should make a copy beforehand.
Fixed in 2021.2.0a6
Resolution Note (fix version 2021.1):
Fixed in 2021.1.6f1
Resolution Note (fix version 2020.3):
Fixed in 2020.3.0f1