Jump to content
  • Advertisement
Sign in to follow this  
Ralph Trickey

'Blending' textures for a random 2D/3D map?

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


Is there any better way to do this or any input on which way is more likely to work, or some entirely new approach suggested for that matter?

I'm looking at designing a simple procedurally generated random 2D like outdoor map using hexes, a bit stylized like a board game map. Also turn-based.

Ideally, I would like to be able to define the hexes with 'overlays' of textures, overlay 1 might be ground, overlay 2 might be some trees in the NW corner, overlay 3 might be a road from N to S, overlay 4 might be a river from the SE to the W, etc. I want to use a texture atlas for each layer and modify the UV values to pick a different part of that atlas for the specific graphic.

In DOS/Windows, the way to do this is to take over the entire screen and paint the first layer, then the second layer, then the third layer, etc. Sprite by sprite, Pixel by Pixel. Works great on a PC, but I'd really like to take advantage of the GPU for smooth panning and zooming. (Plus some 3D decals, etc.)

One way to do this would be to do this the DOS way and paint into a texture atlas (or several atlases) and use that on the hexes and let the GPU do it's magic. The seems the fastest for drawing, but is more complex.

A different way would be to give them slightly different depths (which would limit how closely the camera could zoom, but it might be OK since I plan to limit the camera) I haven't seen any way to do this without many meshes/objects (one per layer per hex) This seems simpler, but I've got concerns about how well it would work.

I'll probably try #2 first since it is simpler (and I like simple ;) But I hope some else has a better idea or input on whether that's going to hit issues.

Thanks in advance

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.

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!