ショート:GLSL再利用可能/共有関数、共有定数(OpenGL ES 2.0)?
すべてのシェーダーが使用できる機能を定義できますか? シェーダごとに定義する必要がありますか?
全体的な話:
私は事前に定義されたグラデーションランプ(このような何か - http://www.thinkboxsoftware.com/storage/krakatoa-support-images/krakatoa15_kcm_densitybyage_gradientrampmap.png)と入力フラグメントを色付けすることを意図し、多くのシェーダを作成したいです。
Iは
(アルファ値が勾配の位置を保持vec4色サンプルのアレイが、上記画像に順位を参照)、各シェーダする傾斜ランプ定数を定義したいと私は必要関数は、特定のテクスチャ座標位置に対して与えられた勾配ランプからカラーサンプルを返すことができます。
ので、ランプがはONCEシェーダごとに定義する必要があり、機能はすべてのシェーダが安全に使用できるすべてを一度に定義さでなければなりません。
私はアルゴリズムを持っていますが、問題はの共有関数であり、GLSLで定数を定義しています。
これは可能ですか? または、すべてのシェーダーに関数をコピーする必要がありますか?いくつかのプリコンパイルオプションはありますか?
おはよう、私はそれを試してみましょう。 – Geri