Remove secondary Texture rendering loop check.
This check was not used. It applied only to rendering Feedback Loops.
The behaviour is undefined in non-WebGL and for WebGL we have a
separate validation check.
Also update the feedback loop tests to ignore the current GL states.
This change is based on feedback from the OpenGL ES working group.
Bug: angleproject:2763
Bug: chromium:763695
Change-Id: I9882b4f9af2d43fc7b5604ff36dadcc79dfd378f
Reviewed-on: https://chromium-review.googlesource.com/1228373
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
diff --git a/src/libANGLE/State.cpp b/src/libANGLE/State.cpp
index 0a0a55a..fcd6414 100644
--- a/src/libANGLE/State.cpp
+++ b/src/libANGLE/State.cpp
@@ -2754,9 +2754,7 @@
// Mark the texture binding bit as dirty if the texture completeness changes.
// TODO(jmadill): Use specific dirty bit for completeness change.
- if (texture->isSamplerComplete(context, sampler) &&
- (mProgram->hasLinkedShaderStage(ShaderType::Compute) ||
- !mDrawFramebuffer->hasTextureAttachment(texture)))
+ if (texture->isSamplerComplete(context, sampler))
{
ANGLE_TRY(texture->syncState(context));
mActiveTexturesCache[textureUnitIndex] = texture;
@@ -2794,10 +2792,7 @@
{
continue;
}
- if (!mDrawFramebuffer->hasTextureAttachment(texture))
- {
- ANGLE_TRY(texture->syncState(context));
- }
+ ANGLE_TRY(texture->syncState(context));
if (texture->initState() == InitState::MayNeedInit)
{
mCachedImageTexturesInitState = InitState::MayNeedInit;