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
- Scene Filter buttons reset to "All" in the Occlusion Window when entering Play Mode but the Scene Filters themselves do not reset
- Transition property is not disabled in the UI Builder when it is set by a variable
- Crash on PersistentManager::GetSerializedType when opening a specific Scene
- GlobalObjectId.GetGlobalObjectIdSlow returns empty ID when in Prefab Isolation Mode
- Crash on Transform::RemoveFromParent when deleting a child GameObject
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