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
- Required SpriteMask class (ID 331) is stripped when "Strip Engine Code" is enabled
- “Maximized serialized file backup not found” error is thrown when minimizing a window in a newly opened project
- Build stack trace contains invalid lines when building with IL2CPP using scripts with delegates containing generic types in the signature
- Entities Systems window has a “Show Full Player Loop” dropdown which does nothing when clicked after enabling “Show Full Player Loop”
- Entities Hierarchy Search “Show/Hide” button’s Lens Icon is blurry when the Editor is on an external monitor
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