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
- [URP] Crash on GameObject::QueryComponentByType when baking a Reflection Probe in an unsaved/untitled Scene
- No Icons are used for the Entry and Exit States in the Inspector when selected in an Animator Controller
- Crash on PlayerMain(int, char const**) when exiting Standalone Player with a Particle System in the Scene
- No Icon is used for the Runtime Animator Controller Type in a Search Window when assigning an Animator Controller in the Animator Component
- Unity Version Control server textfield’s text overlaps with the dropdown triangle button in the Explore repositories window when an organization with a long name is selected
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