デプステクスチャを実装し、2つの異なるドライバーで異なる出力を取得しました。フラグメントシェーダーのtexture()ですべてのチャネルを読み取っています:
“vec4 color = texelFetch(tk_diffuseMap, ivec3(tmp), i);”
この場合、AとBにそれぞれ赤と灰色の画像が表示されます。赤のチャネルを読み取り、それを4つのチャネルすべてに複製すると、Aに次のような灰色の画像が表示されます。
“vec4 color = vec4(texelFetch(tk_diffuseMap, ivec3(tmp), i).x)”.
どちらが正しいですか?