Jump to content
  • Advertisement
Sign in to follow this  
Son of Cain

Multiple layers Isometric map

This topic is 4570 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 apologize for the nature of my question, but since my search in google and other resources wasn't fruitful, I'm going to ask the folks here: do you know of any papers dealing with rendering of isometric maps? I'm talking about isometric maps as in Tactics Ogre/Final Fantasy Tactics Advance games for GBA. I'm toying with OpenGL (JOGL binding, to be more precise), and I can already render an isometric map on screen, though I would like to know how to render different layers of tiles in the same map - for an example, when the players approaches a house's door, he opens up the house's contents for viewing. Thanks in advance for any help, Son Of Cain

Share this post


Link to post
Share on other sites
Advertisement
if you want something like a house that swiches between inside and outside view you might want to try a modifyed pathfinding algorithm like A*

Share this post


Link to post
Share on other sites
I just can suggest you this page :

http://www.gamedev.net/reference/articles/article727.asp

It covers basic aspects of multiple layered tiles.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I would set a bit for each tile that means show insides. Whne the player steps on of the tiles with this bit set, the renderer removes the top plane with the roofs. When the player moves off those marked tiles the roofs will come back. To get the roofs to disappear before the player enters the building, the areas around the doors and windows have to be marked as inside too. The bit can be placed into the same flags field or each tile as the walkable bit.

For more complex effects, you can use different bits for different purposes or use triggers for showing and hiding the roof layer, but this is prone to errors if the player manages to bypass the trigger by finding an alternate route on the map. Bitmaps can not be bypassed since they should be checked every time the player moves.

Viktor

Share this post


Link to post
Share on other sites
Thanks guys for the answer!

I would need one more resource or tip... on how to apply height to isometric blocks. Have any reference material that I could use to learn the basics of height in isometric maps?

Thanks in advance!

Son Of Cain

Share this post


Link to post
Share on other sites
Well, if it makes you feel any better, I'm working on the same thing and having similar hangups. I can render a tile map with each tile being various units in height (effectively what FFTA does), but I need to redesign the map engine to support multiple tiles per (x,y) coordinate - basically adding bridges and tunnels, but using some sort of transparency to fade the obscuring layer. I'm planning on implementing fairly complex terrain such as a deep cave with multiple layers. My engine will need to compete with this, not to mention buildings where roofs and walls obscure the interior.

The biggest enigma for me currently is using traditional up/down/left/right keyboard controls found in 2D games from roguelikes to console RPGs like Final Fantasy and Dragon Quest while still implementing full 360 degree rotation around the character. At many angles, the cardinal directions might be fairly ambiguous.

Share this post


Link to post
Share on other sites
You're probably going to need layers (as you already know), drawn by a "priority" algorithm, apart from transparency itself; there are tiles you won't draw, even if present on screen, because a higher layer is above them in the player view. For those, you do a height check, and if there's anything above the current tile, you don't draw it.

For the rotation problem for cardinal directions, I can only think of adjusting the cardinal positions according to camera rotation; the function that rotates the view is the one responsible for incrementing the cardinal's new position. Also, you can use the FFT trick: preset angles, with preset cardinalities.

Son Of Cain

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!