我是 OpenGL 的初学者,正在尝试运行一些测试。GLSL Sandbox Gallexy有很多片段着色器可用,我想在 GLES 中尝试它们,重用代码。但是,对于大多数着色器来说,它似乎不起作用。
在我尝试运行的着色器中,唯一在 GLES 中工作的着色器就是这个,出于某种原因。为了实现这一点,我必须消除着色器的时间依赖性。
似乎 WebGL 和 GLES 中的某些变量名称不同。如果是这样的话,究竟是哪些?如果不是,从前者翻译到后者的具体程序是什么?
仅提供黑屏的简单片段着色器示例。在我的特殊情况下,我沿着这个最小的顶点着色器运行它:
precision mediump float;
uniform mat4 uMVPMatrix;
attribute vec4 aPosition;
attribute vec2 aTextureCoord;
varying vec2 vTextureCoord;
void main() {
vTextureCoord = aTextureCoord;
gl_Position = uMVPMatrix * aPosition;
}