1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 08:08:12 +00:00

LibWeb/WebGL: Implement WebGLRenderingContextBase.depthRange()

This commit is contained in:
Luke Wilde 2022-06-13 16:55:57 +01:00 committed by Linus Groh
parent d9ef228c76
commit 0805911a93
3 changed files with 15 additions and 0 deletions

View file

@ -199,6 +199,19 @@ void WebGLRenderingContextBase::depth_mask(GLboolean mask)
m_context->gl_depth_mask(mask);
}
void WebGLRenderingContextBase::depth_range(GLclampf z_near, GLclampf z_far)
{
if (m_context_lost)
return;
dbgln_if(WEBGL_CONTEXT_DEBUG, "WebGLRenderingContextBase::depth_range(z_near={}, z_far={})", z_near, z_far);
// https://www.khronos.org/registry/webgl/specs/latest/1.0/#VIEWPORT_DEPTH_RANGE
// "The WebGL API does not support depth ranges with where the near plane is mapped to a value greater than that of the far plane. A call to depthRange will generate an INVALID_OPERATION error if zNear is greater than zFar."
RETURN_WITH_WEBGL_ERROR_IF(z_near > z_far, GL_INVALID_OPERATION);
m_context->gl_depth_range(z_near, z_far);
}
void WebGLRenderingContextBase::finish()
{
if (m_context_lost)