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

Unified Diff: cc/geometry_binding.cc

Issue 12912006: Part 4 of cc/ directory shuffles: output (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 9 months 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
Index: cc/geometry_binding.cc
diff --git a/cc/geometry_binding.cc b/cc/geometry_binding.cc
deleted file mode 100644
index 4bfa7f06924836ab6b11b84daec6f039ad83b7be..0000000000000000000000000000000000000000
--- a/cc/geometry_binding.cc
+++ /dev/null
@@ -1,110 +0,0 @@
-// Copyright 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "cc/geometry_binding.h"
-
-#include "cc/gl_renderer.h" // For the GLC() macro.
-#include "third_party/WebKit/Source/Platform/chromium/public/WebGraphicsContext3D.h"
-#include "third_party/khronos/GLES2/gl2.h"
-#include "ui/gfx/rect_f.h"
-
-namespace cc {
-
-GeometryBinding::GeometryBinding(WebKit::WebGraphicsContext3D* context,
- const gfx::RectF& quad_vertex_rect)
- : context_(context),
- quad_vertices_vbo_(0),
- quad_elements_vbo_(0) {
- float vertices[] = {
- quad_vertex_rect.x(), quad_vertex_rect.bottom(), 0.0f, 0.0f,
- 1.0f, quad_vertex_rect.x(), quad_vertex_rect.y(), 0.0f,
- 0.0f, 0.0f, quad_vertex_rect.right(), quad_vertex_rect.y(),
- 0.0f, 1.0f, 0.0f, quad_vertex_rect.right(),
- quad_vertex_rect.bottom(), 0.0f, 1.0f, 1.0f
- };
-
- struct Vertex {
- float a_position[3];
- float a_texCoord[2];
- // Index of the vertex, divide by 4 to have the matrix for this quad.
- float a_index;
- };
- struct Quad {
- Vertex v0, v1, v2, v3;
- };
- struct QuadIndex {
- uint16_t data[6];
- };
-
- COMPILE_ASSERT(sizeof(Quad) == 24 * sizeof(float), struct_is_densely_packed);
- COMPILE_ASSERT(sizeof(QuadIndex) == 6 * sizeof(uint16_t),
- struct_is_densely_packed);
-
- Quad quad_list[8];
- QuadIndex quad_index_list[8];
- for (int i = 0; i < 8; i++) {
- Vertex v0 = { quad_vertex_rect.x(), quad_vertex_rect.bottom(), 0.0f, 0.0f,
- 1.0f, i * 4.0f + 0.0f };
- Vertex v1 = { quad_vertex_rect.x(), quad_vertex_rect.y(), 0.0f, 0.0f, 0.0f,
- i * 4.0f + 1.0f };
- Vertex v2 = { quad_vertex_rect.right(), quad_vertex_rect.y(), 0.0f, 1.0f,
- 0.0f, i * 4.0f + 2.0f };
- Vertex v3 = { quad_vertex_rect.right(), quad_vertex_rect.bottom(), 0.0f,
- 1.0f, 1.0f, i * 4.0f + 3.0f };
- Quad x = { v0, v1, v2, v3 };
- quad_list[i] = x;
- QuadIndex y = { 0 + 4 * i, 1 + 4 * i, 2 + 4 * i, 3 + 4 * i, 0 + 4 * i,
- 2 + 4 * i };
- quad_index_list[i] = y;
- }
-
- GLC(context_, quad_vertices_vbo_ = context_->createBuffer());
- GLC(context_, quad_elements_vbo_ = context_->createBuffer());
- GLC(context_, context_->bindBuffer(GL_ARRAY_BUFFER, quad_vertices_vbo_));
- GLC(context_,
- context_->bufferData(
- GL_ARRAY_BUFFER, sizeof(quad_list), quad_list, GL_STATIC_DRAW));
- GLC(context_,
- context_->bindBuffer(GL_ELEMENT_ARRAY_BUFFER, quad_elements_vbo_));
- GLC(context_,
- context_->bufferData(GL_ELEMENT_ARRAY_BUFFER,
- sizeof(quad_index_list),
- quad_index_list,
- GL_STATIC_DRAW));
-}
-
-GeometryBinding::~GeometryBinding() {
- GLC(context_, context_->deleteBuffer(quad_vertices_vbo_));
- GLC(context_, context_->deleteBuffer(quad_elements_vbo_));
-}
-
-void GeometryBinding::PrepareForDraw() {
- GLC(context_,
- context_->bindBuffer(GL_ELEMENT_ARRAY_BUFFER, quad_elements_vbo_));
-
- GLC(context_, context_->bindBuffer(GL_ARRAY_BUFFER, quad_vertices_vbo_));
- GLC(context_,
- context_->vertexAttribPointer(
- PositionAttribLocation(), 3, GL_FLOAT, false, 6 * sizeof(float), 0));
- GLC(context_,
- context_->vertexAttribPointer(TexCoordAttribLocation(),
- 2,
- GL_FLOAT,
- false,
- 6 * sizeof(float),
- 3 * sizeof(float)));
- GLC(context_,
- context_->vertexAttribPointer(TriangleIndexAttribLocation(),
- 1,
- GL_FLOAT,
- false,
- 6 * sizeof(float),
- 5 * sizeof(float)));
- GLC(context_, context_->enableVertexAttribArray(PositionAttribLocation()));
- GLC(context_, context_->enableVertexAttribArray(TexCoordAttribLocation()));
- GLC(context_,
- context_->enableVertexAttribArray(TriangleIndexAttribLocation()));
-}
-
-} // namespace cc
« no previous file with comments | « cc/geometry_binding.h ('k') | cc/gl_frame_data.h » ('j') | content/common/view_messages.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698