2D Sprite Animation without Python

I am trying to make a running animation using sprites without using Python. I looked over the internet however I only saw a tutorial by laxwolf that is pretty helpful but outdated and camera quality is pretty old. I can’t keep up because the blender version is the old one too. Any recommended tutorial?


How many frames do you have in your animation?

This probably isn’t the best way to do it without python, but the way i make sprites without python is by making several planes and putting each sprite of animation on each one. Once I have all of them textured and joined into one object, I spread them out on the Y axis, so they are all back to back about 1 or 2 blender units apart. Then I create an armature and go into edit mode and place one armature on each sprite facing straight up. Then i parent the planes to the armature and name each bone according to the frame of animation (Frame_1, Frame_2, etc.). Then I animate the armature so that only one sprite is showing at a time. So if “Frame_1” is showing, then i scale all of the other bones to 0. Then I do the same for “Frame_2” and so on with the next keyframe, until all of the sprites are animated. Then I go into the key tab in the action editor and set “Interpolation Mode” to “Constant.” Then you can easily hook that animation up with logic bricks to play and loop (if its a run animation). If you want to speed up or slow down the animation, all you have to do is go into the action editor and scale all of the keyframes from the first frame. I hope this helps, and I would love to hear about everybody else’s way of achieving this effect without python.

I’ve attached an example with Guybrush Threepwood as a special guest :smiley:

To see the animation just push alt+A

I’ve hidden the armature so you will have to push alt+H to see it

Sprite_no_Python.blend (705 KB)

well. I’m not that sure. But I have 10 run sprites like so,

Assuming you have the whole sprite in one image, I think your easiest approach would be to use a single plane, and in your material animate an offset to the uvs. (assuming you are using cycles and want to render, that is)

Thanks for the post jonim8or. Well, I really quite get it. Do you have any video you can show me?

Thanks Nines! I’ll PM you!

replace_mesh_by_state_example.blend (464 KB)

Here is a real simple example blend, showing how you can manage a character’s display mesh based on the value of a property.

When using the replace mesh actuator, make sure you’re using the mesh name, not the object name. The object’s mesh name is under its object name in the outliner (next to the grey triangle icon). The replacement meshes must be on an inactive layer.

When you press A or D, you will go from ‘idle’ to ‘run’. The Xor gate (noodled to the idle property setter) outputs False if more than one of its inputs are positive, and True if only one is positive (that is, the always pulse and not any of the keyboard sensors).

The property sensors then replace the mesh of the character based on its _state property.

Wow, It’s pretty complicated. I’ll study this and will give you a message when I have any questions. Thank you so much!

You make your animations, I’ll rig it for free,

notice I already made a wall jump and slide down wall rig,

I like your sprites. Did you make them?

Nope, I just got them on the internet for the sake of prototyping. I’ll try to learn them by myself. I’ll PM you if I’ll fail to do so. Lol. Thanks!