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

Unified Diff: remoting/client/gl_canvas.cc

Issue 2148743005: [Remoting Android] Cursor & Cursor Feedback for OpenGL Renderer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Swap BGRA to RGBA Created 4 years, 5 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: remoting/client/gl_canvas.cc
diff --git a/remoting/client/gl_canvas.cc b/remoting/client/gl_canvas.cc
index 74a3932b2aefd2ed5bef9728e85b97506f78fa43..03ae0ea0e1d37832a2e67f35cda44565ccdbc3c9 100644
--- a/remoting/client/gl_canvas.cc
+++ b/remoting/client/gl_canvas.cc
@@ -44,8 +44,10 @@ const char kDrawTexFrag[] =
// Region on the texture to be used (normally the whole texture).
"varying vec2 v_texCoord;\n"
"uniform sampler2D u_texture;\n"
+ "uniform float u_alpha_multiplier;\n"
"void main() {\n"
" gl_FragColor = texture2D(u_texture, v_texCoord);\n"
+ " gl_FragColor.a *= u_alpha_multiplier;\n"
"}";
} // namespace
@@ -60,6 +62,8 @@ GlCanvas::GlCanvas(int gl_version) : gl_version_(gl_version) {
transform_location_ = glGetUniformLocation(program_, "u_transform");
texture_location_ = glGetUniformLocation(program_, "u_texture");
+ alpha_multiplier_location_ =
+ glGetUniformLocation(program_, "u_alpha_multiplier");
position_location_ = glGetAttribLocation(program_, "a_position");
tex_cord_location_ = glGetAttribLocation(program_, "a_texCoord");
glEnableVertexAttribArray(position_location_);
@@ -86,7 +90,8 @@ void GlCanvas::SetNormalizedTransformation(const std::array<float, 9>& matrix) {
void GlCanvas::DrawTexture(int texture_id,
GLuint texture_handle,
- GLuint vertex_buffer) {
+ GLuint vertex_buffer,
+ float alpha_multiplier) {
DCHECK(thread_checker_.CalledOnValidThread());
if (!transformation_set_) {
return;
@@ -94,6 +99,7 @@ void GlCanvas::DrawTexture(int texture_id,
glActiveTexture(GL_TEXTURE0 + texture_id);
glBindTexture(GL_TEXTURE_2D, texture_handle);
glUniform1i(texture_location_, texture_id);
+ glUniform1f(alpha_multiplier_location_, alpha_multiplier);
glBindBuffer(GL_ARRAY_BUFFER, vertex_buffer);
glVertexAttribPointer(position_location_, kVertexSize, GL_FLOAT, GL_FALSE, 0,

Powered by Google App Engine
This is Rietveld 408576698