Jump to content
  • Advertisement
Sign in to follow this  

Joining surfaces (tiled heightmaps)

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

Hi, I am trying to join heightmaps which edges are not guaranteed to match. Essentially, I have a bunch of heightmap tiles generated differently, and want to join these together to form the entire 'planet'. At present, I have tried to join an edge along two heightmaps, A and B, by adjusting their edge points to meet halfway, and then for all points moving away from the edge, adjust proportionally to some parameter, strength. That is, if Strength=8, then the heights of the 8 vertices either side of the edge will be adjusted accordingly. For example, if A is a 2d map and the edge we're joing is at p then: for each vertice, j A


[j]*8/8, A


[j+1]*7/8, A


[j+2]*6/8, ... , A


[j+S]*1/8. However, this creates obvious 'strech' lines along the edge. I've played around with adjusting the edge line and strength randomly (using noise also) but I am not satisfied. Another problem inherent to this method relates to joining corners, i.e. when 4 heightmaps meet. I've considered using a circular joining method here but it all seems hackish. I was wondering if anyone could direct me to some resources about this topic? I've done the google search but I'm not entirely sure what I should be searching... Would anyone else who has attempted this care to pass on some advice? Cheers, Sam

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.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!