aboutsummaryrefslogtreecommitdiffstats
path: root/components/canvas/webgl_thread.rs
diff options
context:
space:
mode:
authorMátyás Mustoha <matyas.mustoha@h-lab.eu>2020-02-18 12:13:59 +0100
committerMátyás Mustoha <matyas.mustoha@h-lab.eu>2020-02-24 10:57:46 +0100
commit8701d4571517ddbddbb0aa5dffb2e485e9876938 (patch)
treeab0d369ab67f57a462cb728186ca797646ba825e /components/canvas/webgl_thread.rs
parent92f5b36f49671756e02a33ec70006d5b374a4388 (diff)
downloadservo-8701d4571517ddbddbb0aa5dffb2e485e9876938.tar.gz
servo-8701d4571517ddbddbb0aa5dffb2e485e9876938.zip
Add support for WebGL2 clear buffer operations
Adds support for the following WebGL2 methods: - `clearBufferfv` - `clearBufferiv` - `clearBufferuiv` - `clearBufferfi` See: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.11
Diffstat (limited to 'components/canvas/webgl_thread.rs')
-rw-r--r--components/canvas/webgl_thread.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/components/canvas/webgl_thread.rs b/components/canvas/webgl_thread.rs
index 186ac043b38..079928c9d57 100644
--- a/components/canvas/webgl_thread.rs
+++ b/components/canvas/webgl_thread.rs
@@ -1956,6 +1956,18 @@ impl WebGLImpl {
offset as isize,
size as isize,
),
+ WebGLCommand::ClearBufferfv(buffer, draw_buffer, ref value) => {
+ gl.clear_buffer_fv(buffer, draw_buffer, value)
+ },
+ WebGLCommand::ClearBufferiv(buffer, draw_buffer, ref value) => {
+ gl.clear_buffer_iv(buffer, draw_buffer, value)
+ },
+ WebGLCommand::ClearBufferuiv(buffer, draw_buffer, ref value) => {
+ gl.clear_buffer_uiv(buffer, draw_buffer, value)
+ },
+ WebGLCommand::ClearBufferfi(buffer, draw_buffer, depth, stencil) => {
+ gl.clear_buffer_fi(buffer, draw_buffer, depth, stencil)
+ },
}
// If debug asertions are enabled, then check the error state.