【发布时间】:2014-03-23 16:32:03
【问题描述】:
我正在使用 OpenGL 编写一个简单的 android 程序来显示简单的每个顶点的彩色形状和一个显示帧速率的计数器。
我发现由于 OpenGL 中缺乏内置的文本渲染,显示帧速率很棘手......我搜索了很长时间以找到一个可以使用 OpenGL ES 2.0 执行此操作的简单代码,我发现 @ 987654321@ 在 Github 上。为此,它使用了专用的顶点和片段着色器。下面展示了片段着色器:
uniform sampler2D u_Texture;
precision mediump float;
uniform vec4 u_Color;
varying vec2 v_TexCoordinate;
void main()
{
gl_FragColor = texture2D(u_Texture, v_TexCoordinate).w * u_Color;
}
但是,为了渲染每个顶点的彩色形状,我使用了以下片段着色器:
precision mediump float;
varying vec4 v_Color;
void main()
{
gl_FragColor = v_Color;
}
我对此有点困惑......
我的 Android 应用程序可以同时使用两种着色器并在其中一种之间切换吗?如果是,如何?
或者我应该使用一个着色器来完成这两项任务吗?在这种情况下,着色器会是什么样子?
另外,我希望能提供任何关于如何在 OpenGL ES 2.0 中轻松实现 FPS 显示的提示(我的意思是一些专门用于 FPS 显示的类,而不是一般的文本渲染)。
【问题讨论】:
标签: android opengl-es-2.0 glsl