0

パーリン ノイズに関するこの記事を読んで、いくつか問題を抱えているように見えるので、誰かが答えを持っているかどうかいくつか質問があります。下部にある疑似コードの 2D セクションでは、彼がランダムに数値を生成することを示していますが、1D コードのパラメーターとして 1 つの変数の代わりに、'x' と 'y' を使用しています。これは 2 次元ノイズで必要ですか、それとも必要ありませんか? また、彼の PerlinNoise_2D 関数は、1 次元の例のように 1 つではなく、2 つの float パラメーターを取ります。これらの float 値は何であるべきで、どこから来たのですか? 誰かが私の質問に対する答えを知っていれば、助けていただければ幸いです。ありがとう。

編集:より簡単な質問ですが、PerlinNoise_2D 関数のパラメーターとして使用される 2 つの float 値はどこで取得できますか?

4

1 に答える 1

1

2次元パターンには2 つのパラメーターが必要です。アプリケーションに最適な方法で、パターンのデカルトx座標とy座標を表すものと考えてください。

たとえば、C++ で W×H ノイズ マップを生成する場合は、次のようにします。

float noise[H][W];
for (int y = 0; y < H; ++y)
    for (int x = 0; x < W; ++x)
        noise[y][x] = PerlinNoise_2D(x, y);

noiseたとえば、値を使用して、ビットマップ内のピクセルのカラー値を調整できます。

(この例では、 パラメータxyパラメータは s である必要はありませんがfloat、一般的には s である必要があります。)

于 2012-05-11T18:46:25.707 に答える