LibWeb/WebGL: Implement deleteBuffer

This commit is contained in:
Luke Wilde 2024-12-05 13:17:27 +00:00 committed by Alexander Kalenik
parent 4c0872ea1b
commit 2e1640a6c5
2 changed files with 9 additions and 1 deletions

View File

@ -77,7 +77,7 @@ interface mixin WebGLRenderingContextBase {
undefined cullFace(GLenum mode); undefined cullFace(GLenum mode);
[FIXME] undefined deleteBuffer(WebGLBuffer? buffer); undefined deleteBuffer(WebGLBuffer? buffer);
[FIXME] undefined deleteFramebuffer(WebGLFramebuffer? framebuffer); [FIXME] undefined deleteFramebuffer(WebGLFramebuffer? framebuffer);
undefined deleteProgram(WebGLProgram? program); undefined deleteProgram(WebGLProgram? program);
[FIXME] undefined deleteRenderbuffer(WebGLRenderbuffer? renderbuffer); [FIXME] undefined deleteRenderbuffer(WebGLRenderbuffer? renderbuffer);

View File

@ -699,6 +699,14 @@ public:
continue; continue;
} }
if (function.name == "deleteBuffer"sv) {
function_impl_generator.append(R"~~~(
auto handle = buffer ? buffer->handle() : 0;
glDeleteBuffers(1, &handle);
)~~~");
continue;
}
Vector<ByteString> gl_call_arguments; Vector<ByteString> gl_call_arguments;
for (size_t i = 0; i < function.parameters.size(); ++i) { for (size_t i = 0; i < function.parameters.size(); ++i) {
auto const& parameter = function.parameters[i]; auto const& parameter = function.parameters[i];