Chromium Code Reviews| 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., |