Jump to content
  • Advertisement
Sign in to follow this  
snufkin

How do I write an isometric 2D engine?

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

A little about myself:

I've programmed a couple of tiled 2D RPGs already, using SDL. I'm also familiar with some "advanced" math, like transformation matrices and what not.

 

On to the problem, then!

 

I want to create an isometric 2D RPG game, but I have no idea where to start. I'm familiar with the concept as such, but I have no experience whatsoever with the implementation. For instance, SDL has a function called SDL_BlitSurface() that blits rectangles, that I've used to copy the texture onto the map. How I'd do the same with an isometric tile, however, I cannot fathom.

 

So, where do I begin? I've searched for both tutorials and actual code, but found nothing that left me any wiser.

Share this post


Link to post
Share on other sites
Advertisement

The world is still a grid.

 

You just need to:

-Make sprites from an isometric point of view

-Instead of rendering them next to each other, you need to somehow convert the x,y world coordinate to the screen so that the rows/columns are diagonally. (take the x,y point and rotate it around the center of the map by 45 degrees, or something similiar. Not sure if you need to scale the resulting y values by some factor...)

 

You can easily use the algorithm you transform the points to the screen the other way, to transform mouse coords to your isometric world.

 

I have never used isometric view (This far i have achieved a grid of rectangles >.<) but this seems logical to me.

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!