32 ビットの float データをシェーダーに送信しようとしていますが、結果が不安定です。完全な白 (1,1,1,1) でテストすると、値はすべてゼロになります。これはテクスチャを作成するための私のコードです:
gl.glTexImage2D(GL.GL_TEXTURE_2D, 0, GL.GL_RGBA32F_ARB, 512, 512, 0, GL.GL_RGBA, GL.GL_FLOAT, data);
そしてGLSLでそれを読む:
uniform sampler2D u_tex1;
varying vec2 v_uv;
void main()
{
gl_FragColor = texture2D(u_tex1, v_uv);
}
テクスチャをランダムな値に設定すると、何かが表示されますが、正しくありません。これは RGBA32F テクスチャから読み取る正しい方法ですか、それとも何か不足していますか?