問題タブ [3d-texture]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
opengl - OpenGL Texture3D FragmentShader レイヤーへの書き込み
テクスチャ (ミップマッピングなし) をフィルタリングし、フィルタリングされたレベルを 3D テクスチャに書き込みたいと考えています。私はすでに次のコードで 3D-Texture を作成しました:
そして、私は自分のモデルを次のようにレンダリングします:
フラグメントシェーダーが同時に複数のレイヤーに書き込み、自分がどのレイヤーにいるかを知る方法はありますか? そのようです?
PS:フラグメントシェーダーのどのレイヤーにあるかを知る必要があります(いくつかのフィルタリングとgl_Layerは使用しないでください... OpenGL 4でのみ使用でき、OpenGL 3のみを使用できます)...ユニフォームに書き込むことができ、複数回レンダリングしますが、1回のパスで行く方法があれば...それはいいでしょう:)
opengl - OpenGL レイヤード レンダリングはゼロのみをレンダリングします
火砕流のボリュームを作成し、3D テクスチャに保存したいと考えています。CPUでこれを行う場合、これは問題ありません。しかし、私のアプリケーションでは CPU が遅いため、レイヤード レンダリングを使用して GPU で 3D テクスチャを作成したいと考えています。
問題は、常にゼロで埋められることです。ランダムデータは常にゼロではありません。現時点で関連するコード スニペットは次のようになります。
そしてシェーダー:
私は何を間違っている/行方不明ですか?
opengl-es - Sampler3D を使用して OpenGL ES 3.x の 3D テクスチャから読み取る
OpenGL ES 3.2 を使用して、フラグメント シェーダーの 3D テクスチャから読み取り、その値を FBO に書き込みます。次に、glReadPixels を使用して FBO 添付ファイルから読み取り、取得した値を出力します。
私はサンプラーを次のように添付しています:
シェーダー内では、テクスチャから次のように読み取ります。
テクスチャからの読み取り中、z 座標が 0 の値からしか読み取ることができません。他の深さから値を読み取ると、ガベージ値または NAN が返されます。
3D テクスチャでは、(x、y、z) 値をテクスチャ座標として使用できませんか? x、y、さらには zは 0.0 から 1.0 の間である可能性があります。