Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

Novalis

Alternative to Perlin Noise

This topic is 6914 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey all, I''m working on a realtime application that relies heavily on the Perlin Noise function to generate data that is being rendered on the screen (specifically procedural textures). I am making about 20000 calls to Noise3() per frame, and this accounts for about a third of the entire program execution time! I''m looking for one of two solutions... 1) Does anyone have a heavily optimized noise library that I could use as a replacement for the version Perlin wrote? 2) Are there any good "approximations" of the Perlin Noise function that are less computationally expensive?

Share this post


Link to post
Share on other sites
Advertisement
Well, first I would try to pre-compute the texture, and stop re-computing it every time! Have several levels of detail or resolution, and switch as the player gets closer/further from the object.

As for alternatives, there is a sub-division algorithm that some programs use, but I don''t know if it''s faster of not. Take a look around.




"The world isn't run by weapons anymore; or energy, or money; it's run by little ones and zeroes, little bits of data -- it's all just electrons."

Share this post


Link to post
Share on other sites
cobra, he''s probably doing animated textures, so he''d have to precompute large 3d volumes which is probably inacceptable.
novalis, noise3() leaves a fair bit of room for optimization, especially if you''re using, say, an older version of MSVC++ (4.0 or 5.0), which had severe issues with floating point optimizations. you may want to look at the assembly code, until i started using intel c++4.5 my assembly version of noise3() was probably 10 times faster than the C one.


--
Float like a butterfly, bite like a crocodile.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!