基本的なことをやっています
1) 位置を計算する
2) 「gl_Position」に保存する
3) 次に、位置情報に基づいて深度を vec2 に保存する
gl_Position = vec4( vVertexPos, 1 ) * mMVP;
vDepth = gl_Position.zw;
vDepth は、シェーダーの上記の変数で、フラグメント シェーダーに渡します
out vec2 vDepth;
フラグメントシェーダーでは、フラグメントの深さを gl_FragDepth に保存します
gl_FragDepth = vDepth.x / vDepth.y;
私の深度値はすべて 1 の値に近いです。何か間違ったことをしていますか? 線形深度値を取得するステップが欠落している可能性はありますか? カメラ情報を計算すると、ニア クリッピングは 0.01 で、ファー クリッピングは 200.0fi です。ニアがそのクリッピング スペースの周囲にある必要があります。