Search Issue Tracker
Won't Fix
Votes
0
Found in
2017.4
2018.4.16f1
2020.2
Issue ID
1217627
Regression
No
[Mac][Metal] Camera "Clear flags" set to Don't clear still clears in Mac build when using Metal graphics API
Reproduction steps:
1. Open the project from the attached file "1217627.zip"
2. Build and run the project setting the target platform to Mac
3. Inspect the screen
Expected result: while the camera is moving frames are drawn without clearing the last drawn frame
Actual result: while the camera is moving the last frame is cleared before drawing a new frame
Reproducible with: 2017.4.38f1, 2018.4.19f1, 2019.3.6f1, 2020.1.0b2, 2020.2.0a4
Notes:
- Not reproducible in Editor
- Only reproducible when using Metal graphics API
- Not reproducible on VLNQA00160 iPhone 6S iOS 13.3.1 with Metal API
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
- Render Graph Execution errors when using GPU occlusion culling with 'Opaque Objects' frame setting disabled on a Camera
- Animator window: “Delete” menu item not greyed out for Base Layer context menu
- Resetting “PC_RP Asset (Universal Render Pipeline Asset)” causes Game view to become black and throws Renderer and NullReference errors in the Console window
- [Mobile] Player Crash on scripting_invoke_profiler_begin when the built Player Scene has an empty UIDocument and is built on IL2CPP
- Unnecessary Warnings are logged when running Player with -batchmode -nographics
Resolution Note (2020.2.X):
"Expected result: while the camera is moving frames are drawn without clearing the last drawn frame"
This is NOT an expected behavior. The contents of backbuffer are unspecified after the frame ended. Some apis allows you to have "whatever was rendered in the previous frame" but this is not a general behavior, so backbuffer must be cleared at frame start. It is different in editor simply because we render to RenderTexture, not to the screen. If the same is done in player (but you need an explicit RT, sure) than it will work as expected