Naga does not let storage buffers or compute happen on old GL versions

This commit is contained in:
Connor Fitzgerald 2025-12-06 19:30:28 -05:00 committed by Teodor Tanasoaia
parent 136edde52a
commit 20f5b835a7
2 changed files with 6 additions and 4 deletions

View File

@ -245,6 +245,7 @@ By @cwfitzgerald in [#8609](https://github.com/gfx-rs/wgpu/pull/8609).
- Fix race when downloading texture from compute shader pass. By @SpeedCrash100 in [#8527](https://github.com/gfx-rs/wgpu/pull/8527)
- Fix double window class registration when dynamic libraries are used. By @Azorlogh in [#8548](https://github.com/gfx-rs/wgpu/pull/8548)
- Fix context loss on device initialization on GL3.3-4.1 contexts. By @cwfitzgerald in [#8674](https://github.com/gfx-rs/wgpu/pull/8674).
#### hal

View File

@ -311,10 +311,11 @@ impl super::Adapter {
es_supported || full_supported
};
let supports_storage =
supported((3, 1), (4, 3)) || extensions.contains("GL_ARB_shader_storage_buffer_object");
let supports_compute =
supported((3, 1), (4, 3)) || extensions.contains("GL_ARB_compute_shader");
// Naga won't let you emit storage buffers at versions below this, so
// we currently can't support GL_ARB_shader_storage_buffer_object.
let supports_storage = supported((3, 1), (4, 3));
// Same with compute shaders and GL_ARB_compute_shader
let supports_compute = supported((3, 1), (4, 3));
let supports_work_group_params = supports_compute;
// ANGLE provides renderer strings like: "ANGLE (Apple, Apple M1 Pro, OpenGL 4.1)"