Advertisement Jump to content
Sign in to follow this  

Procedural Chunked LOD

This topic is 2471 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

Hello. Is it possible to use perlin noise to procedural generate more children in a chunked lod quad tree? I want to be able to do this on a planet lod system, so that the only thing I have to store for a planet is a seed for the noise, and then generate the chunks as you zoom in. All the papers I've read talk about reading heightmaps from a file. If this is possible does anyone have any links to available info on this subject? Thanks.

Share this post

Link to post
Share on other sites
I don't know why it should be impossible nor do I have any materials to point you to, but it's generally the same as reading heightmaps from a file except you won't have to read the heightmaps from a file - just generate heightmaps on the fly. Here's the undetailed and unelegant way on how I would implement it:
1. Generate a cube with each corner of cube at distance R from the center of cube.
2. Subdivide like you would subdivide a LOD while keeping each added point of subdivision at distance R from center of cube. It should be something like this:

Vo - original vector of point location
C - center of cube
Vf - final vector of point location
Vf = ((Vo-C)/distanceBetween(C, Vo))*R + C

3. Add noise to each point. Since you'll want to keep the points on the edges of cube seamless, you can blend in some noise from adjacent sides.
4. Deal with any pesky details that arise with chunked lod quadtrees smile.png

You might want to check out http://en.wikipedia....i/Simplex_noise or other noise algorithms as well. Speed might become an issue when you have to generate a lot of data and it should be possible to generate Simplex noise faster than Perlin noise.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. 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!