Explorar o código

LibWeb/WebGL2: Implement deleteSampler

Luke Wilde hai 7 meses
pai
achega
b4ab08c958

+ 1 - 1
Libraries/LibWeb/WebGL/WebGL2RenderingContextBase.idl

@@ -388,7 +388,7 @@ interface mixin WebGL2RenderingContextBase {
 
     // Sampler Objects
     WebGLSampler createSampler();
-    [FIXME] undefined deleteSampler(WebGLSampler? sampler);
+    undefined deleteSampler(WebGLSampler? sampler);
     [FIXME] GLboolean isSampler(WebGLSampler? sampler); // [WebGLHandlesContextLoss]
     undefined bindSampler(GLuint unit, WebGLSampler? sampler);
     undefined samplerParameteri(WebGLSampler sampler, GLenum pname, GLint param);

+ 8 - 0
Meta/Lagom/Tools/CodeGenerators/LibWeb/GenerateWebGLRenderingContext.cpp

@@ -1288,6 +1288,14 @@ public:
             continue;
         }
 
+        if (function.name == "deleteSampler"sv) {
+            generate_webgl_object_handle_unwrap(function_impl_generator, "sampler"sv, ""sv);
+            function_impl_generator.append(R"~~~(
+    glDeleteSamplers(1, &sampler_handle);
+)~~~");
+            continue;
+        }
+
         if (function.name == "bindBuffer"sv) {
             // FIXME: Implement Buffer Object Binding restrictions.
             generate_webgl_object_handle_unwrap(function_impl_generator, "buffer"sv, ""sv);