$12256 / $11500
Hello, I'm programming a C++ 2D isometric RPG and I have some issues with characters' movements. It just doesn't look natural, instead he kind of slips on the ground
To move/animate the character, I move him 8 or 4px (depending on the direction) and go to the next animation frame
Does anyone have an advice?
It appears to me the animation is running slower than the movement speed. Try moving the character fewer pixels per move or cycle through more animation frames per move. I understand this may be difficult since you have a set number of animation frames as well as a set distance between tiles. Try working in multiples of your animation frames: if you have 6 frames in a walk cycle, try bumping your animation rate so it renders 12 frames per move (or 2 full walk cycles), if that still looks "slide-y" bump it up again to 3 walk cycles.
You may have to decouple your walking animation speed from movement distance. Make it so as long as the character is moving, the walk animation is running. Then, if the character stops, stop the animation as well and set the characcter back to the standing-still frame. That will allow you to set the animation speed independent of the distance traveled. Once the character stops at their destination, it may jump from a middle-of-a-step frame of animation to a standing-still frame, but it usually doesn't look as unnatural as you'd expect.
If that isn't making sense to you, let me know. Can you make the character spritesheet available here for me to use in demonstrations?
--Medicine Storm
I've worked a lot with isometric projection, specifically in a 2D environment and this is definitely one of the problems I would encounter when trying to give something that finishing touch. MedicineStorm mentoned pretty much everything, the only thing I can add is that it can take some time to really get a good feel for an animation and how to transition it across the screen.
Definitely decouple the animation speed and movement distance, pick some variable for it, possibly something that divides nicely into your tile width/height virtual sizes. Slow the movement speed when walking horizontally, since you are doing 8 directions instead of just 4 it can require some fine tuning. Also make sure the animation completes a full cycle (which it looks like it does) for a set number of steps, time it out smoothly.
Other than that it's not awful looking, but will require more work to get it game-ready.
Good luck!!
Project: Dusk Tactics http://dusktactics.com - Isometric Turn Based Tactics SRPG (Java 8 LibGDX)
Looking for Pixel Artist, 2D Concept Artist!
it looks alright, i don't think there was any game of that caliber that move naturally, from diablo to AoE
but referencing from existing game, it is distance/time equals to velocity?
maybe 6 to 5 px is good?