Search Issue Tracker

Fixed

Votes

6

Found in

4.5.5p5

Issue ID

673294

Regression

No

XCode Frame Debugging does not work with Antialiasing enabled when Graphics Level set to Automatic on iPhone 6

iOS

-

It looks like XCode's frame debugger doesn't work with Unity-generated iOS projects under specific conditions. See attached project.

Conditions:
- Must be using an iPhone 6 (not 5, not 6+)
- Antialiasing must be enabled, either at runtime via QualitySettings.antiAliasing, or in Quality Settings window before build.

Steps to Reproduce:
1 - Open attached project in Unity
2 - Open build dialogue
3 - Add scene & switch to iOS build target
4 - Click "Player Settings"
5 - In Player Settings window, open "Other Settings" and ensure "Graphics Level" is set to "Force GLES3"(*)
6 - Click Build button in Build window (_not_ build & run)
7 - Open built project in XCode
8 - Run project from XCode
9 - Once project is running on the device, press the on-screen button to enable MSAA 2X.
10 - Open XCode's "Debug" menu & choose "Capture GPU Frame"
11 - (Expected) iOS device pauses and GPU frame debugger is shown in XCode
11 - (Observed) Depends on Unity version.

On Unity 4.5.5, receive the message "Could not process a renderbuffer attachment during playback. This is likely caused by deleting a bound object from another context with the same sharegroup, or by deleting an object attached to an unbound container object."

On Unity 4.6 or 5.0, the Capture GPU Frame option is disabled.

NOTE: The "Capture GPU Frame" option works successfully if any of the stated conditons are changed.
- It works fine on an iPhone 6+
- It works fine if antialiasing is disabled

(*) If "Graphics Level" is set to "Automatic" or "Metal", the "Capture GPU Frame" option will be greyed-out in XCode.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.