godot
godot copied to clipboard
macOS with Intel Iris Graphics - Godot 4 beta 5 Project Manager using OpenGL3 is empty.
Godot version
v4.0.beta5.official
System information
macOS Big Sur v11.6.8, MacBook Pro (Retina, 13-inch, Early 2015), 2,7 GHz Dual-Core Inter Core i5, Intel Iris Graphics 6100 1536 MB, 8GB RAM
Issue description
When launching Godot, the Project Manager doesn't show anything at all. I can open the project through the project.godot file and everything seems to be working well.
Steps to reproduce
Just launching the Godot app.
Minimal reproduction project
No response
I wonder if it is related to the fact you are using an older macOS (I assume that 2015 laptops, can't, or shouldn't be updated to the lates macOS.
The ProjectManager using GLES3 driver are broken on macOS 11.7.1, I think we can use Vulkan Mobile instead of GLES3 in Godot 4.0 Project Manager, because Vulkan Mobile is working OK on older macOS.
@snougo Can you try opening the editor from the command line with the command line argument --rendering-method mobile
?
@clayjohn yes It's opening
peter@KevindeMacBook-Pro /Applications % Godot.app/Contents/MacOS/Godot --rendering-method mobile
arguments
0: Godot.app/Contents/MacOS/Godot
1: --rendering-method
2: mobile
Current path: /Applications
Godot Engine v4.0.beta5.official.89a33d28f - https://godotengine.org
[mvk-info] MoltenVK version 1.2.0, supporting Vulkan version 1.2.231.
The following 81 Vulkan extensions are supported:
VK_KHR_16bit_storage v1
VK_KHR_8bit_storage v1
VK_KHR_bind_memory2 v1
VK_KHR_create_renderpass2 v1
VK_KHR_dedicated_allocation v3
VK_KHR_depth_stencil_resolve v1
VK_KHR_descriptor_update_template v1
VK_KHR_device_group v4
VK_KHR_device_group_creation v1
VK_KHR_driver_properties v1
VK_KHR_dynamic_rendering v1
VK_KHR_external_fence v1
VK_KHR_external_fence_capabilities v1
VK_KHR_external_memory v1
VK_KHR_external_memory_capabilities v1
VK_KHR_external_semaphore v1
VK_KHR_external_semaphore_capabilities v1
VK_KHR_fragment_shader_barycentric v1
VK_KHR_get_memory_requirements2 v1
VK_KHR_get_physical_device_properties2 v2
VK_KHR_get_surface_capabilities2 v1
VK_KHR_imageless_framebuffer v1
VK_KHR_image_format_list v1
VK_KHR_maintenance1 v2
VK_KHR_maintenance2 v1
VK_KHR_maintenance3 v1
VK_KHR_multiview v1
VK_KHR_portability_subset v1
VK_KHR_push_descriptor v2
VK_KHR_relaxed_block_layout v1
VK_KHR_sampler_mirror_clamp_to_edge v3
VK_KHR_sampler_ycbcr_conversion v14
VK_KHR_separate_depth_stencil_layouts v1
VK_KHR_shader_draw_parameters v1
VK_KHR_shader_float_controls v4
VK_KHR_shader_float16_int8 v1
VK_KHR_shader_subgroup_extended_types v1
VK_KHR_spirv_1_4 v1
VK_KHR_storage_buffer_storage_class v1
VK_KHR_surface v25
VK_KHR_swapchain v70
VK_KHR_swapchain_mutable_format v1
VK_KHR_timeline_semaphore v2
VK_KHR_uniform_buffer_standard_layout v1
VK_KHR_variable_pointers v1
VK_EXT_debug_marker v4
VK_EXT_debug_report v10
VK_EXT_debug_utils v2
VK_EXT_descriptor_indexing v2
VK_EXT_fragment_shader_interlock v1
VK_EXT_hdr_metadata v2
VK_EXT_host_query_reset v1
VK_EXT_image_robustness v1
VK_EXT_inline_uniform_block v1
VK_EXT_memory_budget v1
VK_EXT_metal_objects v1
VK_EXT_metal_surface v1
VK_EXT_post_depth_coverage v1
VK_EXT_private_data v1
VK_EXT_robustness2 v1
VK_EXT_sample_locations v1
VK_EXT_scalar_block_layout v1
VK_EXT_separate_stencil_usage v1
VK_EXT_shader_stencil_export v1
VK_EXT_shader_viewport_index_layer v1
VK_EXT_subgroup_size_control v2
VK_EXT_swapchain_colorspace v4
VK_EXT_texel_buffer_alignment v1
VK_EXT_texture_compression_astc_hdr v1
VK_EXT_vertex_attribute_divisor v3
VK_AMD_gpu_shader_half_float v2
VK_AMD_negative_viewport_height v1
VK_AMD_shader_image_load_store_lod v1
VK_AMD_shader_trinary_minmax v1
VK_IMG_format_pvrtc v1
VK_INTEL_shader_integer_functions2 v1
VK_GOOGLE_display_timing v1
VK_MVK_macos_surface v3
VK_MVK_moltenvk v36
VK_NV_fragment_shader_barycentric v1
VK_NV_glsl_shader v1
[mvk-info] GPU device:
model: Intel Iris Graphics
type: Integrated
vendorID: 0x8086
deviceID: 0x0a2e
pipelineCacheUUID: 000027D8-0B07-07D1-0000-000000000000
supports the following Metal Versions, GPU's and Feature Sets:
Metal Shading Language 2.3
GPU Family Mac 1
GPU Family Common 2
GPU Family Common 1
macOS GPU Family 1 v4
macOS GPU Family 1 v3
macOS GPU Family 1 v2
macOS GPU Family 1 v1
[mvk-info] Created VkInstance for Vulkan version 1.2.0, as requested by app, with the following 3 Vulkan extensions enabled:
VK_KHR_get_physical_device_properties2 v2
VK_KHR_surface v25
VK_MVK_macos_surface v3
Vulkan API 1.2.231 - Using Vulkan Device #0: Intel - Intel Iris Graphics
[mvk-info] Vulkan semaphores using MTLEvent.
[mvk-info] Created VkDevice to run on GPU Intel Iris Graphics with the following 4 Vulkan extensions enabled:
VK_KHR_create_renderpass2 v1
VK_KHR_multiview v1
VK_KHR_swapchain v70
VK_GOOGLE_display_timing v1
[mvk-info] Created 3 swapchain images with initial size (1152, 648) and contents scale 1.0 for screen VX2260WM.
[mvk-info] Created 3 swapchain images with initial size (1152, 648) and contents scale 1.0 for screen VX2260WM.
[mvk-info] Created 3 swapchain images with initial size (1152, 648) and contents scale 1.0 for screen VX2260WM.
[mvk-info] Created 3 swapchain images with initial size (482, 94) and contents scale 1.0 for screen VX2260WM.
[mvk-info] Created 3 swapchain images with initial size (482, 94) and contents scale 1.0 for screen VX2260WM.
[mvk-info] Created 3 swapchain images with initial size (482, 94) and contents scale 1.0 for screen VX2260WM.
@snougo Could you also let me know what gets printed when you run godot using the OpenGL renderer?
@clayjohn
peter@KevindeMacBook-Pro ~ % /Applications/Godot.app/Contents/MacOS/Godot --rendering-method gl_compatibility arguments 0: /Applications/Godot.app/Contents/MacOS/Godot 1: --rendering-method 2: gl_compatibility Current path: /Users/peter Godot Engine v4.0.beta5.official.89a33d28f - https://godotengine.org OpenGL Renderer: Intel Iris OpenGL Engine
Just tried in on macOS 13.0.1 and the editor interface is rendering as expected
I tried the same method but mine doesn't work I'm running on a macOS High Sierra version 10.13.6 with an intel Iris graphics 6100
oh it works i just need to wait a little bit...
oh it works i just need to wait a little bit...
Yes, at first time you may need to wait a seconds, but next time it will be quickly to launch.
wait, my mesh is not showing
wait, my mesh is not showing
my device is MacBookPro 2013 late, maybe you can try to upgrade your os version to macOS 11.7.1
i cant upgrade it my mac will break
uh did you use the --rendering-method gl_compatibility?
uh did you use the --rendering-method gl_compatibility?
yes and it's just show this, because it's the default setting by Beta5
i tried the same (--rendering-method gl_compatibility )and all is grey
no gizmo too only skybox
my fps is also 1000
I bought a 2015 Macbook pro (same as in the OP) this weekend and can now reproduce the issue. I hope to have a fix later this week. I will update here once I am closer to fixing this.
I change the computer to macOS Catalina version 10.15.7 and it seems to fix the problem :)
With the new Beta 7 out today, I spent some time trying to get Godot 4 working on my older Macbook. I'll document my findings here:
System
MacBook Pro (Retina, 13-inch, Early 2015) Processor: 2.7 GHz Dual-Core Intel Core i5 Memory: 8 GB 1867 MHz DDR3 Graphics: Intel Iris Graphics 6100 1536 MB
1. Mobile
./Godot --rendering-method mobile
Result is a blank editor screen as per original issue.
This occurred for me on macOS High Sierra (10.13.2) and Mojave (10.14.6).
Incidentally, buttons are pushable (i.e. blindly clicking in the first "Please Confirm..." dialog where buttons should be visible (same in the main editor window)); this yields familiar dialogs (import, create new etc).
On Catalina (10.15.7) the editor launches correctly.
Further, creating a project with Forward+
causes the editor to terminate upon load, and an active Godot application icon is left in the menu bar.
With Mobile support it launches fine, and I can see the gizmo when I select a Node3D scene root.
2. GL Compatibility
./Godot --rendering-method gl_compatibility
In each case of macOS High Sierra (10.13.2), Mojave (10.14.6) and Catalina (10.15.7), the editor fails to launch. For 10.13.2 and 10.14.6, lots of log output but no window. For 10.15.7, the editor window appears but has no UI (though these "invisible" buttons are clickable as in Mobile).
I don't have the log output anymore, but the issues appeared quite similar.
As a quick update on this issue. I spent a day this week debugging this issue. Oddly enough, there are no errors and the shaders appear to be running correctly. The only catch is the shaders aren't receiving data from some of the bound uniforms (some of them work correctly). Oddly enough the uniform buffers appear to be bound properly and filled properly, but the shader doesn't get any of the data. I think given a few days I could get a workaround up and running, but at this point I am 99% sure that this is a driver bug.
Given that our plan is to exclusively ship Apple using ANGLE to translate OpenGL to Metal, I have started working on getting ANGLE working with current master (building on the great work of @bruvzg in https://github.com/godotengine/godot/pull/54914). If my theory is correct everything will render correctly once ANGLE is used and we won't have to add any workarounds into the renderer.
I got ANGLE working earlier this week and it worked, but much to my disappointment, it bloated shader compile times by around 100x (it took about 5 minutes to load the project manager).
This afternoon I did a little investigation into rewriting the canvas shader in a way that might be a bit more friendly to the poor macOS drivers and came up with https://github.com/clayjohn/godot/tree/GLES3-attribs This branch works on my early 2015 macbook (12.6.1)
If anyone who is facing this problem is okay building the engine themself, please test out https://github.com/clayjohn/godot/tree/GLES3-attribs and let me know if it works for you.
I need to do some more investigation as https://github.com/clayjohn/godot/tree/GLES3-attribs runs slower on my main device than master (master runs the project manager in 2 ms and this branch takes 4 ms)
it bloated shader compile times by around 100x (it took about 5 minutes to load the project manager).
I'm not sure if this is a new issue. Project manager also takes 5 minutes to load on a new Godot install if I force --rendering-device vulkan
(and so does every new project the first time I open it). So it sounds to me like the same amount of setup time as vulkan. As long as they get cached between runs of Godot, it shouldn't be that bad.
I have the same macbook and OS version as you (early 2015 pro, 12.6.1). I also have a dual boot of 10.13 which I can test it with
i tried the new beta 8 but when i open it the same grey screen still hapened
fixed in beta9
yay! it worked! the beta 9 also have opengl3
i have access to forward + :D
i'm kinda sad because theres less features :(
opengl3 still fast tho