I am working on a basic isometric game, and am struggling to find the correct mirrors.

Mirror can be any form of transform.

I have managed to get SE out of SW, by scaling the sprite on X axis by -1. Same applies for NE angle.

Something is bugging me, that I should be able to also mirror N to S, but I cannot manage to pull this one off.

Am I just too sleepy and trying to do the impossible, or a basic -1 scale on Y axis is not enough?

What are the common used mirror table for optimizing 8 angle (N, NE, E, SE, S, SW, W, NW) isometric sprites?

  • 3
    \$\begingroup\$ Care to share a screenshot? \$\endgroup\$ – AturSams Oct 2 '12 at 22:11

With standard player sprites you really only have 3 mirrors. NW/NE, W/E, and SW/SE. You can't mirror north and south because you're looking at the "back" of the avatar in one direction and the "front" in another. This means you need 5 directions authored and you can extrapolate 8 total.

This is assuming that the sprites are mirrorable, of course. Namely, that they're symmetrical along the vertical axis. Or that you don't care about the mirroring artifacts.

| improve this answer | |

I will dare say that you should not do this. I have two main reasons for this.

1) Most objects cannot be mirrored. A person cannot. Maybe if the person is just standing. But if the person is holding something in its hand, if you mirror it, it will seems that he has changed hands, which in many cases is not what you want.

2) Isometric projection is meant to be pseudo 3D. This usually means that nicely drawn sprites will have some shadows, accents etc. To maintain the appearance, all sprites need to seem like they are lit from the same direction. If you start mirroring, then the shadows will switch sides as well, and it will all look out of whack.

I suppose there are situations where above points are not of concern, but most modern hardware can very easily handle thousands of sprites, and rendering each many thousands of times, so you are probably better off concentrating on general performance and not mirroring optimization.

| improve this answer | |
  • \$\begingroup\$ He may be dealing with a mobile platform with a restrictive memory limit. \$\endgroup\$ – Tetrad Oct 3 '12 at 15:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.