vange-rs
vange-rs copied to clipboard
Support running on older Windows via Angle
Similar to #163, but for Windows
cc @DileSoft
One strange thing - Angle builds with "api-ms-win-core-sysinfo-l1-1-0.dll" but the actual name it requires on Win7 is "api-ms-win-core-sysinfo-l1-2-0.dll":
Another issue after this file is renamed:
$ RUST_BACKTRACE=full RUST_LOG=wgpu_hal=debug cargo run
Finished dev [unoptimized + debuginfo] target(s) in 1.57s
Running `target\debug\road.exe`
[2021-12-05T18:54:25Z DEBUG wgpu_hal::gles::egl] Client extensions: [
"EGL_EXT_client_extensions",
"EGL_EXT_device_query",
"EGL_EXT_platform_base",
"EGL_EXT_platform_device",
"EGL_ANGLE_platform_angle",
"EGL_ANGLE_platform_angle_d3d",
"EGL_ANGLE_platform_angle_device_type_swiftshader",
"EGL_ANGLE_platform_angle_opengl",
"EGL_ANGLE_platform_angle_null",
"EGL_ANGLE_platform_angle_vulkan",
"EGL_ANGLE_device_creation",
"EGL_ANGLE_device_creation_d3d11",
"EGL_ANGLE_experimental_present_path",
"EGL_KHR_client_get_all_proc_addresses",
"EGL_KHR_debug",
"EGL_ANGLE_feature_control",
]
[2021-12-05T18:54:25Z INFO wgpu_hal::gles::egl] Loading X11 library to get the current display
[2021-12-05T18:54:25Z INFO wgpu_hal::gles::egl] Using default platform
[2021-12-05T18:54:25Z INFO wgpu_hal::gles::egl] Enabling EGL debug output
[2021-12-05T18:54:26Z INFO wgpu_hal::gles::egl] Display vendor "Google Inc. (NVIDIA)", version (1, 5)
[2021-12-05T18:54:26Z DEBUG wgpu_hal::gles::egl] Display extensions: [
"EGL_EXT_create_context_robustness",
"EGL_ANGLE_d3d_share_handle_client_buffer",
"EGL_ANGLE_d3d_texture_client_buffer",
"EGL_ANGLE_surface_d3d_texture_2d_share_handle",
"EGL_ANGLE_query_surface_pointer",
"EGL_ANGLE_window_fixed_size",
"EGL_ANGLE_keyed_mutex",
"EGL_ANGLE_surface_orientation",
"EGL_NV_post_sub_buffer",
"EGL_KHR_create_context",
"EGL_KHR_image",
"EGL_KHR_image_base",
"EGL_KHR_gl_texture_2D_image",
"EGL_KHR_gl_texture_cubemap_image",
"EGL_KHR_gl_renderbuffer_image",
"EGL_KHR_get_all_proc_addresses",
"EGL_KHR_stream",
"EGL_KHR_stream_consumer_gltexture",
"EGL_NV_stream_consumer_gltexture_yuv",
"EGL_ANGLE_stream_producer_d3d_texture",
"EGL_ANGLE_create_context_webgl_compatibility",
"EGL_CHROMIUM_create_context_bind_generates_resource",
"EGL_EXT_pixel_format_float",
"EGL_KHR_surfaceless_context",
"EGL_ANGLE_display_texture_share_group",
"EGL_ANGLE_display_semaphore_share_group",
"EGL_ANGLE_create_context_client_arrays",
"EGL_ANGLE_program_cache_control",
"EGL_ANGLE_robust_resource_initialization",
"EGL_ANGLE_create_context_extensions_enabled",
"EGL_ANDROID_blob_cache",
"EGL_ANDROID_recordable",
"EGL_ANGLE_image_d3d11_texture",
"EGL_ANGLE_create_context_backwards_compatible",
"EGL_KHR_no_config_context",
"EGL_KHR_create_context_no_error",
"EGL_KHR_reusable_sync",
"EGL_KHR_mutable_render_buffer",
]
[2021-12-05T18:54:26Z INFO wgpu_hal::gles::egl] EGL surface: +srgb
[2021-12-05T18:54:26Z INFO wgpu_hal::gles::egl] Trying native-render
[2021-12-05T18:54:26Z WARN wgpu_hal::gles::egl] No config found!
[2021-12-05T18:54:26Z INFO wgpu_hal::gles::egl] Trying presentation
[2021-12-05T18:54:26Z WARN wgpu_hal::gles::egl] EGL says it can present to the window but not natively
[2021-12-05T18:54:26Z INFO wgpu_hal::gles::egl] EGL context: +debug
[2021-12-05T18:54:26Z INFO wgpu_hal::gles::egl] EGL context: +robust access EXT
[2021-12-05T18:54:26Z WARN wgpu_hal::gles::egl] unable to create GLES 3.x context: BadMatch
thread 'main' panicked at 'Unable to initialize GPU via the selected backend.', bin/road\..\boilerplate.rs:86:14
stack backtrace:
0: 0x140ca384e - std::backtrace_rs::backtrace::dbghelp::trace
at /rustc/59eed8a2aac0230a8b53e89d4e99d55912ba6b35\/library\std\src\..\..\backtrace\src\backtrace\dbghelp.rs:98
1: 0x140ca384e - std::backtrace_rs::backtrace::trace_unsynchronized
This used to work for a while, and now stopped again as of #212. Now it's a bit of a blocker.