Results 1 to 10 of 23

Thread: mvNoise, Perlin noise - problem

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Quote Originally Posted by User137 View Post
    I appreciated the effort, but i still translated my own Your version was procedural, and didn't support 2D or 4D.
    https://code.google.com/p/nxpascal/s...rc/nxNoise.pas
    i did it for my own use to make it 2d you pass z = 0

  2. #2
    4D is fun too when you want to see 3-dimensional terrain bubble around like plasma At first i thought the extra dimension would be most feasible to use as seed, IE. for 2D world i'd use 3-dimensional noise where Z = seed. But i realized that i could alter the permutation table instead.

    So that's what i did now, adding seed: int64 parameter to constructor. Then masking the permutation bytes with xor and seed. Basically what it does is:

    Imagine seed was 4 bits (it's 64 bits really), for example seed=0110.
    Then i have original permutation byte-array, going for example
    100011011100... then make the seed wrap to same length:
    011001100110... and finally XOR them for final permutation:
    111010111010
    And final touch, because seeds 0 through 1000 still showed hardly any change, i multiply seed at beginning with some constant 85123154182917 number, to force more bit-changes. Looks fine for now.

  3. #3
    PGDCE Developer Carver413's Avatar
    Join Date
    Jun 2010
    Location
    Spokane,WA,Usa
    Posts
    206
    why put that multipler in there at all. maybe sometimes you want only subtle changes or you want to choose a different multiplier. anyway thanks for the post, I'll be sure to check it out when I have some time.

  4. #4
    Maybe a bit late to ask, but, how Perlin Noise is different than a Plasma Cloud? Is there some advantage to use Perlin Noise?

  5. #5
    Quote Originally Posted by pitfiend View Post
    Maybe a bit late to ask, but, how Perlin Noise is different than a Plasma Cloud? Is there some advantage to use Perlin Noise?
    The main diferences between Perlin Noise and Pasma Cloud are:
    1. In Plasma Cloud you put subsequent pixels between the other two pixels while in Perlin Noise you actually place subsequent pixels moved a bit based on pseudorandom gradiant vector.
    2. In Perlin Noise you usually pregenerate premutation table and use thet for making random textures for each octave and thus removes the need to be constantly generating random numbers. This in the end gives you better perfornamce since random number generation is quite slow.
    3. In perlin noise you can define custom size and presistance for each octave with which you get fine controll on final texture.

  6. #6
    Quote Originally Posted by SilverWarior View Post
    The main diferences between Perlin Noise and Pasma Cloud are:
    1. In Plasma Cloud you put subsequent pixels between the other two pixels while in Perlin Noise you actually place subsequent pixels moved a bit based on pseudorandom gradiant vector.
    2. In Perlin Noise you usually pregenerate premutation table and use thet for making random textures for each octave and thus removes the need to be constantly generating random numbers. This in the end gives you better perfornamce since random number generation is quite slow.
    3. In perlin noise you can define custom size and presistance for each octave with which you get fine controll on final texture.
    So, if I feed a plasma generator with a precalculated table of permutation and allow the custom size and persitence, I could achieve similar results? Also want to be clear that you can generate plasma in many ways.
    Last edited by pitfiend; 12-07-2013 at 06:56 AM.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •