[英]OpenGL ES 3.0 Java draw vertices with color Array (different color to each vertex)
[英]OpenGL ES 2 - color and texture in vertex
我正在使用OpenGL ES 2.0編寫程序。 我需要在另一個上繪制紋理,例如鍾針。 紋理均為1024 x 1024,並且是透明的。 透明度始終呈現黑色,這使我無法將時鍾指針紋理疊加在時鍾上。
simple_fragment_shader.glsl
precision mediump float;
varying vec4 v_Color;
void main()
{
gl_FragColor = v_Color;
}
simple_vertex_shader.glsl
uniform mat4 u_Matrix;
attribute vec4 a_Position;
attribute vec4 a_Color;
varying vec4 v_Color;
void main()
{
v_Color = a_Color;
gl_Position = u_Matrix * a_Position;
gl_PointSize = 10.0;
}
texture_fragment_shader.glsl
precision mediump float;
uniform sampler2D u_TextureUnit;
varying vec2 v_TextureCoordinates;
void main()
{
gl_FragColor = texture2D(u_TextureUnit, v_TextureCoordinates);
}
texture_vertex_shader.glsl
uniform mat4 u_Matrix;
attribute vec4 a_Position;
attribute vec2 a_TextureCoordinates;
varying vec2 v_TextureCoordinates;
void main()
{
v_TextureCoordinates = a_TextureCoordinates;
gl_Position = u_Matrix * a_Position;
}
我是OpenGL的新手,我使用過紋理,但是我不知道如何獲得透明度。
另外,如果有幫助,我會遵循The Pragmatic Programmers
Kevin Brothaler的OpenGL ES 2 for Android
的方法。
如果不進行以下設置,則可能會忽略Alpha值。
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
希望對您有所幫助:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.