Anixias
Member
I have an issue that I've always worked around by allowing fractional view coordinates, although that distorts all of the artwork of the game.
Basically, I have an isometric view and I set the view to the round() of whatever position I want it at. When my player moves cardinally, it looks fine. If I walk diagonally, however, it looks like absolute garbage:
If you speed it up so that it's running at 144 fps, the motion blur because of the terrible jaggedy rounding stuff causes the whole game to look blurry.
What is a visually pleasing method of ensuring that the view is only on integer coordinates, and not have it look terrible when it moves non-cardinally? I also round() the player's position to ensure pixel-perfect artwork remains in-tact.
EDIT:
Changing round() to floor() or ceil() mitigates the effect on stationary objects but amplifies the effect on the player.
Basically, I have an isometric view and I set the view to the round() of whatever position I want it at. When my player moves cardinally, it looks fine. If I walk diagonally, however, it looks like absolute garbage:
If you speed it up so that it's running at 144 fps, the motion blur because of the terrible jaggedy rounding stuff causes the whole game to look blurry.
What is a visually pleasing method of ensuring that the view is only on integer coordinates, and not have it look terrible when it moves non-cardinally? I also round() the player's position to ensure pixel-perfect artwork remains in-tact.
EDIT:
Changing round() to floor() or ceil() mitigates the effect on stationary objects but amplifies the effect on the player.