これは奇妙な問題です。フラグメント シェーダーに均一な色を渡そうとすると、コンパイル エラーが発生します。
uniform vec4 uniformColor;
void main(){
gl_FragColor = uniformColor;
}
しかし、同じ均一な色を頂点シェーダーに渡してから、変化を介してフラグメント シェーダーに渡すと、正常に動作します..
attribute vec4 position;
uniform mat4 matrix;
uniform vec4 uniformColor;
varying vec4 fragmentColor;
void main()
{
gl_Position = matrix * position;
fragmentColor = uniformColor;
}
と
varying lowp vec4 fragmentColor;
void main()
{
gl_FragColor = fragmentColor;
}
これはiOS上にあります。
オンラインから例をコピーして貼り付けるとエラーが発生するため、少し混乱しています。