GL_ANGLE_multiview has been renamed to GL_OVR_multiview2.
changes include:
1) GL_OVR_multiview to GL_OVR_multiview2 extension directive change
2) Removal of all references to side by side. We no longer support multiple views in a single 2DTexture. Only 2DTextureArray's are supported
3) WebGL 2 (ES3) is required for multiview
Bug: angleproject:3341
Change-Id: Ie0c1d21d7610f8feebdb2e4d01c6947f57e69328
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1552023
Commit-Queue: Rafael Cintron <rafael.cintron@microsoft.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/renderer/gl/FramebufferGL.cpp b/src/libANGLE/renderer/gl/FramebufferGL.cpp
index b4799e7..e1db56a 100644
--- a/src/libANGLE/renderer/gl/FramebufferGL.cpp
+++ b/src/libANGLE/renderer/gl/FramebufferGL.cpp
@@ -75,7 +75,7 @@
texture->getType() == TextureType::_3D ||
texture->getType() == TextureType::_2DMultisampleArray)
{
- if (attachment->getMultiviewLayout() == GL_FRAMEBUFFER_MULTIVIEW_LAYERED_ANGLE)
+ if (attachment->isMultiview())
{
ASSERT(functions->framebufferTexture);
functions->framebufferTexture(GL_FRAMEBUFFER, attachmentPoint,
@@ -136,7 +136,7 @@
{
if (colorAttachment.isAttached())
{
- if (colorAttachment.getMultiviewLayout() == GL_NONE)
+ if (!colorAttachment.isMultiview())
{
return false;
}
@@ -149,7 +149,7 @@
const FramebufferAttachment *depthAttachment = state.getDepthAttachment();
if (depthAttachment)
{
- if (depthAttachment->getMultiviewLayout() == GL_NONE)
+ if (!depthAttachment->isMultiview())
{
return false;
}
@@ -160,7 +160,7 @@
const FramebufferAttachment *stencilAttachment = state.getStencilAttachment();
if (stencilAttachment)
{
- if (stencilAttachment->getMultiviewLayout() == GL_NONE)
+ if (!stencilAttachment->isMultiview())
{
return false;
}
@@ -173,16 +173,11 @@
{
return false;
}
- switch (attachment->getMultiviewLayout())
+ if (attachment->isMultiview())
{
- case GL_FRAMEBUFFER_MULTIVIEW_LAYERED_ANGLE:
- // If all layers of each texture array are active, then there is no need to issue a
- // special multiview clear.
- return !allTextureArraysAreFullyAttached;
- case GL_FRAMEBUFFER_MULTIVIEW_SIDE_BY_SIDE_ANGLE:
- return (scissorTestEnabled == true);
- default:
- UNREACHABLE();
+ // If all layers of each texture array are active, then there is no need to issue a
+ // special multiview clear.
+ return !allTextureArraysAreFullyAttached;
}
return false;
}
@@ -714,9 +709,6 @@
if (attachment && mState.id() == context->getState().getDrawFramebuffer()->id())
{
- const bool isSideBySide =
- (attachment->getMultiviewLayout() == GL_FRAMEBUFFER_MULTIVIEW_SIDE_BY_SIDE_ANGLE);
- stateManager->setSideBySide(isSideBySide);
stateManager->updateMultiviewBaseViewLayerIndexUniform(context->getState().getProgram(),
getState());
}