How to generate or smooth really large procedural terrain?

by EnhancedElegance   Last Updated December 06, 2018 15:13 PM

I'm currently trying to generate a really large procedural terrain in WebGL. I use a quadtree for LOD and plan to generate 1 heightmap for each quadtree node (terrain patch).

The heightmaps are generated on the GPU and with such a large terrain, 32 bits floats don't have enough precision for the smaller terrain patches. This results in terrain becoming "blocky". This article uses bicubic surfaces to smooth things out.

I thought a lot about it and the only other solution I have is to generate the smallest terrain patche on the CPU (with double precision) instead of the GPU, but continue to generate the larger patches on the GPU. But this doesn't seem like the best thing to do. Does someone have an idea for a better solution?

Also, I can't use double precision on the GPU because I'm using WebGL, which doesn't support it.

Thanks a lot :)

Related Questions

how can i apply a skybox correctly ? in opengl

Updated November 03, 2018 17:13 PM

terrain generation using c++ opengl

Updated August 23, 2017 21:13 PM

The gist of tweening with WebGL / OpenGL

Updated March 15, 2019 00:13 AM

Error code 1282 when calling glDrawElements

Updated August 21, 2018 11:13 AM