summaryrefslogtreecommitdiff
path: root/libs/hwui/renderstate/RenderState.cpp
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2016-05-04 01:11:15 +0000
committerandroid-build-merger <android-build-merger@google.com>2016-05-04 01:11:15 +0000
commit92e7158f81843c23215d55dced1e25f15304eca5 (patch)
tree4c7bf15f879a48e09364b2a74d5dbe956fed02d5 /libs/hwui/renderstate/RenderState.cpp
parentd0c995c88e025e57e4e223691597e954d9357a59 (diff)
parentb2e36d7939610de538a6ec95a821b61b365b3073 (diff)
Merge "Use LUT for computing final shadow alpha" into nyc-dev
am: b2e36d7939 * commit 'b2e36d7939610de538a6ec95a821b61b365b3073': Use LUT for computing final shadow alpha Change-Id: Ia17e3b93e9ade0633aee5a1e9edd60b92dd1e062
Diffstat (limited to 'libs/hwui/renderstate/RenderState.cpp')
-rw-r--r--libs/hwui/renderstate/RenderState.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/libs/hwui/renderstate/RenderState.cpp b/libs/hwui/renderstate/RenderState.cpp
index 9b8661132d52..5e600644ca19 100644
--- a/libs/hwui/renderstate/RenderState.cpp
+++ b/libs/hwui/renderstate/RenderState.cpp
@@ -298,7 +298,8 @@ void RenderState::render(const Glop& glop, const Matrix4& orthoMatrix) {
// indices
meshState().bindIndicesBuffer(indices.bufferObject);
- if (vertices.attribFlags & VertexAttribFlags::TextureCoord) {
+ // texture
+ if (fill.texture.texture != nullptr) {
const Glop::Fill::TextureData& texture = fill.texture;
// texture always takes slot 0, shader samplers increment from there
mCaches->textureState().activateTexture(0);
@@ -311,13 +312,16 @@ void RenderState::render(const Glop& glop, const Matrix4& orthoMatrix) {
texture.texture->setFilter(texture.filter, false, false, texture.target);
}
- meshState().enableTexCoordsVertexArray();
- meshState().bindTexCoordsVertexPointer(vertices.texCoord, vertices.stride);
-
if (texture.textureTransform) {
glUniformMatrix4fv(fill.program->getUniform("mainTextureTransform"), 1,
GL_FALSE, &texture.textureTransform->data[0]);
}
+ }
+
+ // vertex attributes (tex coord, color, alpha)
+ if (vertices.attribFlags & VertexAttribFlags::TextureCoord) {
+ meshState().enableTexCoordsVertexArray();
+ meshState().bindTexCoordsVertexPointer(vertices.texCoord, vertices.stride);
} else {
meshState().disableTexCoordsVertexArray();
}