Index: ui/gfx/compositor/compositor_gl.cc |
diff --git a/ui/gfx/compositor/compositor_gl.cc b/ui/gfx/compositor/compositor_gl.cc |
index e591e2accf084ca4dc043c7eed8b0f6b53165469..137d9e203578ed783fcb76f5aa829c8187fd3f19 100644 |
--- a/ui/gfx/compositor/compositor_gl.cc |
+++ b/ui/gfx/compositor/compositor_gl.cc |
@@ -161,31 +161,14 @@ void TextureGL::Draw(const ui::Transform& transform) { |
glUniform1i(compositor_->u_tex_loc(), 0); |
glBindTexture(GL_TEXTURE_2D, texture_id_); |
+ const SkMatrix44& matrix = t.matrix(); |
rjkroege
2011/06/10 17:52:14
Given Ganesh, there should be a single call into S
|
+ |
GLfloat m[16]; |
- const SkMatrix& matrix = t.matrix(); |
- |
- // Convert 3x3 view transform matrix (row major) into 4x4 GL matrix (column |
- // major). Assume 2-D rotations/translations restricted to XY plane. |
- |
- m[ 0] = matrix[0]; |
- m[ 1] = matrix[3]; |
- m[ 2] = 0; |
- m[ 3] = matrix[6]; |
- |
- m[ 4] = matrix[1]; |
- m[ 5] = matrix[4]; |
- m[ 6] = 0; |
- m[ 7] = matrix[7]; |
- |
- m[ 8] = 0; |
- m[ 9] = 0; |
- m[10] = 1; |
- m[11] = 0; |
- |
- m[12] = matrix[2]; |
- m[13] = matrix[5]; |
- m[14] = 0; |
- m[15] = matrix[8]; |
+ for (int i = 0; i < 4; ++i) { |
+ for (int j = 0; j < 4; ++j) { |
+ m[i + j * 4] = matrix.get(i, j); |
+ } |
+ } |
const GLfloat vertices[] = { -1., -1., +0., +0., +1., |
+1., -1., +0., +1., +1., |