Skip to content

Commit

Permalink
Create gles buffers with DYNAMIC_DRAW instead of STATIC_DRAW (#3391)
Browse files Browse the repository at this point in the history
  • Loading branch information
Dinnerbone authored Jan 17, 2023
1 parent 0c465eb commit 0705c7a
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 1 deletion.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,7 @@ Additionally `Surface::get_default_config` now returns an Option and returns Non
- Fixed WebGL not displaying srgb targets correctly if a non-screen filling viewport was previously set. By @Wumpf in [#3093](https://github.com/gfx-rs/wgpu/pull/3093)
- Fix disallowing multisampling for float textures if otherwise supported. By @Wumpf in [#3183](https://github.com/gfx-rs/wgpu/pull/3183)
- Fix a panic when creating a pipeline with opaque types other than samplers (images and atomic counters). By @James2022-rgb in [#3361](https://github.com/gfx-rs/wgpu/pull/3361)
- Fix uniform buffers being empty on some vendors. By @Dinnerbone in [#3391](https://github.com/gfx-rs/wgpu/pull/3391)

#### Vulkan

Expand Down
5 changes: 4 additions & 1 deletion wgpu-hal/src/gles/device.rs
Original file line number Diff line number Diff line change
Expand Up @@ -500,7 +500,10 @@ impl crate::Device<super::Api> for super::Device {
glow::DYNAMIC_DRAW
}
} else {
glow::STATIC_DRAW
// Even if the usage doesn't contain SRC_READ, we update it internally at least once
// Some vendors take usage very literally and STATIC_DRAW will freeze us with an empty buffer
// https://github.com/gfx-rs/wgpu/issues/3371
glow::DYNAMIC_DRAW
};
unsafe { gl.buffer_data_size(target, raw_size, usage) };
}
Expand Down

0 comments on commit 0705c7a

Please sign in to comment.