Commit d5401e26 by Nicolas Capens

Fix setting depth+stencil texture attachment.

Change-Id: I97f30a38f2f78ae5c4e2be8899dae3c8ff8bc748 Reviewed-on: https://swiftshader-review.googlesource.com/8968Reviewed-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarNicolas Capens <capn@google.com> Tested-by: 's avatarNicolas Capens <capn@google.com>
parent 400667e6
...@@ -2062,6 +2062,8 @@ void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GL ...@@ -2062,6 +2062,8 @@ void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GL
if(context) if(context)
{ {
GLint clientVersion = context->getClientVersion();
if(texture == 0) if(texture == 0)
{ {
textarget = GL_NONE; textarget = GL_NONE;
...@@ -2098,7 +2100,7 @@ void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GL ...@@ -2098,7 +2100,7 @@ void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GL
return error(GL_INVALID_ENUM); return error(GL_INVALID_ENUM);
} }
if((level != 0) && (context->getClientVersion() < 3)) if((level != 0) && (clientVersion < 3))
{ {
return error(GL_INVALID_VALUE); return error(GL_INVALID_VALUE);
} }
...@@ -2174,6 +2176,14 @@ void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GL ...@@ -2174,6 +2176,14 @@ void FramebufferTexture2D(GLenum target, GLenum attachment, GLenum textarget, GL
break; break;
case GL_DEPTH_ATTACHMENT: framebuffer->setDepthbuffer(textarget, texture, level); break; case GL_DEPTH_ATTACHMENT: framebuffer->setDepthbuffer(textarget, texture, level); break;
case GL_STENCIL_ATTACHMENT: framebuffer->setStencilbuffer(textarget, texture, level); break; case GL_STENCIL_ATTACHMENT: framebuffer->setStencilbuffer(textarget, texture, level); break;
case GL_DEPTH_STENCIL_ATTACHMENT:
if(clientVersion >= 3)
{
framebuffer->setDepthbuffer(textarget, texture, level);
framebuffer->setStencilbuffer(textarget, texture, level);
break;
}
else return error(GL_INVALID_ENUM);
default: default:
return error(GL_INVALID_ENUM); return error(GL_INVALID_ENUM);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment