Jump to content
  • Advertisement
Sign in to follow this  

terrain engine idea

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

I had this idea for a terrain engine, and I was just wondering what others thought of it, and it has been implemented before. my idea is rather than use a rectangular grid for your height feild, you use a polar grid centered around the view position. a bunch of concentric circles centered around the view position with a number of axes running out from them to form the grid. the number of circles and axes would be a function of the viewer altitude the terrain's vertex data can be updated every few seconds or useing a multi-threading solution. I'm thinking this could have distinct advantages over the normal method of square grids of varying dencities, it would atomaticly have higher level of detail closer to the player, and it would probly be easy to cull geometry especaly if you can ensure that the ceter point is always behind the eye. but it would also mean that all points would have to be calculated dynamicly, you wouldn't just be able to make a maximum dencity grid and cache from that. I'm not very experienced with terrain engines, so this might be common, but I don't think I've ever seen an implementation like this. does anyone think this might be a good idea?

Share this post


Link to post
Share on other sites
Advertisement
I've looked into it a bit, but havn't taken the time to get something that looks good. You don't have to convert between coordinate systems, you can generate the concentric circles once in a preprocessing stage, and look up a heightmap using the x and y components to set it to the terrain around you.

It could be a usefull technique, but is not entirely without issues:
1. It gives a bit of a weird effect when you move around, more noticable than other lod schemes because everything changes.
1. It's hard on the cpu (you need bicubic interpolation for it to look good) and these days people want to push more work to the gpu. But the cpu time is a problem with most lod schemes.
3. I think textures distort a bit. I get the feeling you should be able to use the texture matrix somehow so you don't have to generate the uv coords yourself, but I havn't tried.

Share this post


Link to post
Share on other sites
with the newer VS versions comeing out, there could be a static vertx buffer that just reads the hieghtmap, much like displacement mapping, then all you'd have to do is make sevral versions of the base vertex/index buffers for the diferent LODs. unfortunately this would requier VS 3.0 or later, you'd need to be able to look into a texture and get a color at a vertex. after getting this set up all you'd need would be a simple translation matrix for the textures.

Share this post


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

  • Advertisement
×

Important Information

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

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!