2

私は 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;
}
4

1 に答える 1