11
GLSLのランダム/ノイズ関数
GPUドライバーベンダーは通常noiseXGLSLでの実装を気にしないため、GPUシェーダー内での使用に最適化された「グラフィックスランダム化スイスアーミーナイフ」ユーティリティ関数セットを探しています。私はGLSLを好みますが、どの言語でもコードを作成できます。自分でそれをGLSLに翻訳してもかまいません。 具体的には、私は期待します: a)擬似ランダム関数 -M次元のシードから計算された、[-1,1]または[0,1]を超えるN次元の均一な分布(理想的には任意の値ですが、シードを抑制しても問題ありません)たとえば、0..1は均一な結果の分布です)。何かのようなもの: float random (T seed); vec2 random2 (T seed); vec3 random3 (T seed); vec4 random4 (T seed); // T being either float, vec2, vec3, vec4 - ideally. b)は、連続ノイズノイズパーリン様-再度、N次元、+ -一様分布、ウェル拘束値のセットと、を有する、(パーリンレベルのような外観を構成するためのいくつかのオプションが)あまりにも有用である可能性が良い探し。私は次のような署名を期待します: float noise (T coord, TT seed); vec2 noise2 (T coord, TT seed); // ... 私は乱数生成理論にあまり詳しくないので、私はできる限り既成の解決策を模索しますが、「ここに非常に優れた効率的な1D rand()があります。あなたどのようにそれの上に優れたN次元のrand()を作るために...」。