問題タブ [hlsl2glsl]
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-es-2.0 - Cgプログラムを構成する正しい方法は何ですか?
このチュートリアルでは、明示的なOUT構造を使用します。例:
しかし、私のシェーダーの1つを見ると、明示的な入力/出力パラメーターがあります。
これでHLSL2GLSLを使用する際に問題が発生し、Cg形式が原因であるかどうか疑問に思いました(Cgスクリプトとしては正常に機能しますが)。「正しい」方法はありますか、それとも同じ目的のための2つの単純に異なる方法ですか?
hlsl - ハイブリッド cg/hlsl シェーダーを glsl es に変換する
cg/hlsl ハイブリッド シェーダーを glsl es シェーダーに変換できるツールを探しています。実行可能な hlsl キーワードですが、キーワード「extern」を理解しない hlsl2glsl を試しましたが、cgc を調べましたが、glsl es のコンパイル方法に関するドキュメントは見つかりませんでした。
ありがとう
shader - GLSL ES ピクセル シェーダーは、未使用の texcoords が渡された場合にのみ機能します。
複数のピクセルシェーダー間で共有される頂点シェーダーがあります-iOSのGLSL ES 2.0。VS は、変換された位置、法線、および 1 セットの 2D uv 座標を出力します。これがその要点です。
これは、UV を TEXCOORD0 に出力し、法線に TEXCOORD6 を使用する Cg シェーダに基づいています。
私の問題は、入力として uv 座標と法線を取る PS は正常に動作していますが、法線のみを取る PS はそうではないということです。uv を渡すように PS メソッド シグネチャを変更しても、これを使用しない場合は機能します。
これは期待される、明確に定義された動作ですか? もしそうなら、不要なパラメーターをシェーダーに渡したり、VS の複数のバージョンを作成したりすることを避ける方法はありますか?
opengl - GLSL シェーダーでの入出力構造体の使用
HLSL では、次のように記述できます。
この構造体を頂点シェーダーの入力として使用します。
GLSLに似たようなものはありますか? または、次のように書く必要がありますか?
opengl-es-2.0 - Directx9 でのピクセル シェーダーのパフォーマンスが Opengl ES2.0 と同等でない
Directx-9 のピクセル シェーダーを使用してドロップ エフェクトを使用して、2 つの画像間の遷移に使用される hlsl で記述された特定の SlimDX.Direct3D9 を作成しています。Java 6.0 を使用する Android プロジェクトで使用するために、glsl 言語で同じピクセル シェーダーを作成しました。
ここでの問題は、両方のマシンのパフォーマンスの違いにあります。Android マシンはスムーズな移行を示していますが、移行中に Windows マシンにピクセル化が見られます。ピクセル シェーダー 2.0 バージョンが directx プロジェクトで使用されています
opengl - Unity のシェーダー内の 2 つのジオメトリの絶対差の合計
シェーダー内で絶対差の合計を実行し、単一の結果を統一された均一なフロートに書き戻そうとしています。シェーダーには、1 対 1 でマップされる同じ数の頂点を持つ 2 つのジオメトリがあります。
個々の頂点ごとにエラーを計算し、その差に基づいてサーフェスの色を変更できます。すべてのスレッドを同期して値の合計を開始する方法がわからない障害にぶつかりました。
最初の頂点シェーダーが完了した後に別の頂点シェーダーを呼び出す方法はありますか?
頂点シェーダーは隣接する頂点の値をどのように読み取ることができますか? (スレッドのローカルメモリにあるため、可能だとは思わないでください)
または、グローバル配列を使用して差分値を保存し、これを CPU にコピーして (レイテンシーのためにこれは望ましくありません)、それらを CPU に追加することは可能ですか?
I don't want to use compute shader because I am not in Windows
hlsl - GPU HLSL 計算シェーダー警告 int および uint 除算
除算では int の代わりに uint を使用することをお勧めします。
デフォルトでは、データ型から、uint の方が高速であると想定しています。ただし、オンラインのさまざまなテストでは、反対のことが示されているようです。おそらく、この矛盾は CPU 側のみにあり、GPU の並列化には未知の利点がありますか? (それともただの悪いアドバイスですか?)
shader - 角括弧演算子はHLSLで何をしますか
Windows から Linux へのアプリケーションの移植に取り組んでおり、演算子 [] が HLSL で行うことと、GLSL に移植する方法を理解する必要があります。
次のようなコードがあります。
サンプル関数はピクセル値を返す必要がありますよね? xa は一種のオフセットですか?