Repository: godot
Issue: failed to make complete framebuffer object 8cd6
Labels: bug,platform:ios,topic:rendering

### Godot version

Godot 3.5.1

### System information

 iOS 16.1.1.1 on iPhone XS Max, Xcode 14.1

### Issue description

My application works on Android and Desktop. It works on iOS except for one crucial fatal problem. On iOS, the splash screen loads, then after the splash screen the first thing the user sees is a black screen. It stays black indefinitely. Sometimes swiping the screen as if to start to swap out of the app causes the screen to then start rendering properly.

When the screen is black, the application is still running. I can see it is still running because it has logs showing what activities are occurring.

The most relevant part of this iOS/xcode logs appear to be these messages:

```
2022-11-18 14:49:07.599488+0800 myapp-0.6.3-beta[3943:209169] Metal API Validation Enabled
2022-11-18 14:49:08.077557+0800 myapp-0.6.3-beta[3943:209169] Setting up an OpenGL ES 2.0 context.
2022-11-18 14:49:08.079391+0800 myapp-0.6.3-beta[3943:209169] failed to make complete framebuffer object 8cd6
2022-11-18 14:49:08.079431+0800 myapp-0.6.3-beta[3943:209169] Failed to create frame buffer!

```
But I am not sure if these errors are even related, because I don't understand OpenGL that well.  Here are the actual full logs:



```
Thread Performance Checker: Thread running at QOS_CLASS_USER_INTERACTIVE waiting on a lower QoS thread running at QOS_CLASS_DEFAULT. Investigate ways to avoid priority inversions
PID: 3943, TID: 209169
Backtrace
=================================================================
3   GPUToolsCore                        0x00000001025c56b8 _ZN8GPUTools9Interpose15DYInitInterposeEPFP16DYGuestAppClientvEi + 404
4   dyld                                0x00000001d0c72280 CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 29312
5   dyld                                0x00000001d0cc8360 CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 381792
6   dyld                                0x00000001d0c70968 CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 22888
7   dyld                                0x00000001d0c6fcd8 CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 19672
8   dyld                                0x00000001d0c6f17c CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 16764
9   dyld                                0x00000001d0c7ad5c CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 64860
10  dyld                                0x00000001d0c77788 CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 51080
11  dyld                                0x00000001d0c73ccc CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 36044
12  dyld                                0x00000001d0c7933c CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 58172
13  dyld                                0x00000001d0cad244 CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 270916
14  dyld                                0x00000001d0c8266c CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 95852
15  dyld                                0x00000001d0c808d4 CB3FF411-4762-34D2-86A4-ECA13F9FB6C3 + 88276
*********** main.m
running app main
Path: /var/containers/Bundle/Application/D9FFD5CB-880D-45B0-BAF2-AD5595A6C462/myapp-0.6.3-beta.app
godot_iphone /var/containers/Bundle/Application/D9FFD5CB-880D-45B0-BAF2-AD5595A6C462/myapp-0.6.3-beta.app/myapp-0.6.3-beta
cwd /private/var/containers/Bundle/Application/D9FFD5CB-880D-45B0-BAF2-AD5595A6C462/myapp-0.6.3-beta.app
os created
setting data dir to /var/mobile/Containers/Data/Application/033BCF68-B88F-4FDD-B5B2-59AFC9DE357C/Documents from /var/mobile/Containers/Data/Application/033BCF68-B88F-4FDD-B5B2-59AFC9DE357C/Documents
setup 0
2022-11-18 14:49:07.599488+0800 myapp-0.6.3-beta[3943:209169] Metal API Validation Enabled
2022-11-18 14:49:08.077557+0800 myapp-0.6.3-beta[3943:209169] Setting up an OpenGL ES 2.0 context.
2022-11-18 14:49:08.079391+0800 myapp-0.6.3-beta[3943:209169] failed to make complete framebuffer object 8cd6
2022-11-18 14:49:08.079431+0800 myapp-0.6.3-beta[3943:209169] Failed to create frame buffer!
******** setting up keyboard input view
******** adding observer for keyboard show/hide
start animation!
2022-11-18 14:49:08.120672+0800 myapp-0.6.3-beta[3943:209169] ERROR: AudioOutputUnitStart failed, code: -50
2022-11-18 14:49:08.120705+0800 myapp-0.6.3-beta[3943:209169]    at: start (drivers/coreaudio/audio_driver_coreaudio.cpp:249) - AudioOutputUnitStart failed, code: -50
ERROR: AudioOutputUnitStart failed, code: -50
   at: start (drivers/coreaudio/audio_driver_coreaudio.cpp:249) - AudioOutputUnitStart failed, code: -50
2022-11-18 14:49:08.125660+0800 myapp-0.6.3-beta[3943:209169] Godot Engine v3.5.1.stable.official.6fed1ffa3 - https://godotengine.org
Godot Engine v3.5.1.stable.official.6fed1ffa3 - https://godotengine.org
2022-11-18 14:49:08.133034+0800 myapp-0.6.3-beta[3943:209169] OpenGL ES 2.0 Renderer: Apple A12 GPU
OpenGL ES 2.0 Renderer: Apple A12 GPU
2022-11-18 14:49:08.494273+0800 myapp-0.6.3-beta[3943:209169] 
 
2022-11-18 14:49:08.929637+0800 myapp-0.6.3-beta[3943:209169] Opened database successfully (/var/mobile/Containers/Data/Application/033BCF68-B88F-4FDD-B5B2-59AFC9DE357C/Documents/db.sqlite3)
Opened database successfully (/var/mobile/Containers/Data/Application/033BCF68-B88F-4FDD-B5B2-59AFC9DE357C/Documents/db.sqlite3)
2022-11-18 14:49:08.929694+0800 myapp-0.6.3-beta[3943:209169] checking tables exist
checking tables exist
2022-11-18 14:49:09.074786+0800 myapp-0.6.3-beta[3943:209169] Starting on 1668754149 Expires on 1670372808
Starting on 1668754149 Expires on 1670372808
2022-11-18 14:49:09.075055+0800 myapp-0.6.3-beta[3943:209169] loading course menu
loading course menu
2022-11-18 14:49:09.292180+0800 myapp-0.6.3-beta[3943:209169] CourseMenu/show_course_menu()
CourseMenu/show_course_menu()
2022-11-18 14:49:09.292403+0800 myapp-0.6.3-beta[3943:209169] CourseMenu/show_level_menu(Level 1)
CourseMenu/show_level_menu(Level 1)
2022-11-18 14:49:09.292444+0800 myapp-0.6.3-beta[3943:209169] event: 9o0AZcZfP7o level 0
event: 9o0AZcZfP7o level 0


```






### Steps to reproduce

I am unsure which elements of my project I should pull out of it to create a minimal working app that demonstrates the problem. It is a large app with many functions. It would take days to pull it apart bit by bit and rebuild it. Does the error log provide enough of a clue as to what the problem might be? OR will I need to go back to the drawing board and rebuild the app step by step to see where its falling over in iOS?

### Minimal reproduction project

I am unsure which elements of my project I should pull out of it to create a minimal working app that demonstrates the problem. It is a large app with many functions. It would take days to pull it apart bit by bit and rebuild it. Does the error log provide enough of a clue as to what the problem might be? OR will I need to go back to the drawing board and rebuild the app step by step to see where its falling over in iOS?