Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1511)

Unified Diff: cc/gl_renderer.cc

Issue 11275222: Avoid setting activeTexture redundantly (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase for r166988 Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/direct_renderer.h ('k') | cc/gl_renderer_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/gl_renderer.cc
diff --git a/cc/gl_renderer.cc b/cc/gl_renderer.cc
index 55e2846296f3a7e7e0746a2137c59cf838b30c43..c9be888ac8d7e0f0fe21674cdd9d08193738e52c 100644
--- a/cc/gl_renderer.cc
+++ b/cc/gl_renderer.cc
@@ -242,6 +242,7 @@ void GLRenderer::beginDrawingFrame(DrawingFrame& frame)
GLC(m_context, m_context->colorMask(true, true, true, true));
GLC(m_context, m_context->enable(GL_BLEND));
GLC(m_context, m_context->blendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA));
+ GLC(context(), context()->activeTexture(GL_TEXTURE0));
}
void GLRenderer::doNoOp()
@@ -573,7 +574,6 @@ void GLRenderer::drawRenderPassQuad(DrawingFrame& frame, const RenderPassDrawQua
// FIXME: use the backgroundTexture and blend the background in with this draw instead of having a separate copy of the background texture.
- GLC(context(), context()->activeTexture(GL_TEXTURE0));
context()->bindTexture(GL_TEXTURE_2D, contentsTextureId);
int shaderQuadLocation = -1;
@@ -759,7 +759,6 @@ void GLRenderer::drawTileQuad(const DrawingFrame& frame, const TileDrawQuad* qua
GLC(context(), context()->useProgram(uniforms.program));
GLC(context(), context()->uniform1i(uniforms.samplerLocation, 0));
- GLC(context(), context()->activeTexture(GL_TEXTURE0));
ResourceProvider::ScopedReadLockGL quadResourceLock(m_resourceProvider, quad->resourceId());
GLC(context(), context()->bindTexture(GL_TEXTURE_2D, quadResourceLock.textureId()));
GLC(context(), context()->texParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, quad->textureFilter()));
@@ -925,7 +924,6 @@ void GLRenderer::drawStreamVideoQuad(const DrawingFrame& frame, const StreamVide
toGLMatrix(&glMatrix[0], quad->matrix());
GLC(context(), context()->uniformMatrix4fv(program->vertexShader().texMatrixLocation(), 1, false, glMatrix));
- GLC(context(), context()->activeTexture(GL_TEXTURE0));
GLC(context(), context()->bindTexture(GL_TEXTURE_EXTERNAL_OES, quad->textureId()));
GLC(context(), context()->uniform1i(program->fragmentShader().samplerLocation(), 0));
@@ -970,7 +968,6 @@ void GLRenderer::drawTextureQuad(const DrawingFrame& frame, const TextureDrawQua
const gfx::RectF& uvRect = quad->uvRect();
GLC(context(), context()->uniform4f(binding.texTransformLocation, uvRect.x(), uvRect.y(), uvRect.width(), uvRect.height()));
- GLC(context(), context()->activeTexture(GL_TEXTURE0));
ResourceProvider::ScopedReadLockGL quadResourceLock(m_resourceProvider, quad->resourceId());
GLC(context(), context()->bindTexture(GL_TEXTURE_2D, quadResourceLock.textureId()));
@@ -1012,7 +1009,6 @@ void GLRenderer::drawIOSurfaceQuad(const DrawingFrame& frame, const IOSurfaceDra
else
GLC(context(), context()->uniform4f(binding.texTransformLocation, 0, 0, quad->ioSurfaceSize().width(), quad->ioSurfaceSize().height()));
- GLC(context(), context()->activeTexture(GL_TEXTURE0));
GLC(context(), context()->bindTexture(GL_TEXTURE_RECTANGLE_ARB, quad->ioSurfaceTextureId()));
setShaderOpacity(quad->opacity(), binding.alphaLocation);
@@ -1092,7 +1088,6 @@ void GLRenderer::copyTextureToFramebuffer(const DrawingFrame& frame, int texture
{
const RenderPassProgram* program = renderPassProgram();
- GLC(context(), context()->activeTexture(GL_TEXTURE0));
GLC(context(), context()->bindTexture(GL_TEXTURE_2D, textureId));
GLC(context(), context()->texParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR));
GLC(context(), context()->texParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR));
« no previous file with comments | « cc/direct_renderer.h ('k') | cc/gl_renderer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698