1
\$\begingroup\$

First I want to say that I am not an artist, and I intend to work with an artist to complete my project. I'm looking for the solution that makes it the easiest to work with the artist and create the best final product.

I also want to clarify what my two choices are, in case I've used imprecise language.

1) Sprite sheets. By this, I mean that each frame of animation is a complete picture, as shown on the right-hand side of this image.

2) Animating pieces with keyframes. By this I mean each piece of the character is a separate sprite as shown on the left-hand side of the same image. In this case, the developer must specify keyframes and the engine interpolates between them to create a smooth animation.

Here are some pros and cons of each as I see it.

1 Pros

  • Each frame looks better, more connected and whole
  • Less work for the developer, just drop it in as a new animation

1 Cons

  • Potentially choppy animations (an artist isn't likely to draw 60 frames per second of animation)
  • A lot of work for the artist if the character has to move in lots of different ways
  • Difficult to communicate ideas about exactly how the character should move

2 Pros

  • Smooth animation
  • Very dynamic, the character can move in an infinite number of ways without requiring more assets to be produced
  • Less work for the artist (this is good for the developer too because you can have faster iteration and create new assets easier)

2 Cons

  • Potential for wonky looking characters (joints moving in weird ways or not looking fully connected)
  • More work for the developer (must animate everything themselves)

If it helps, I have two main use-cases. The first game that I want to make is an infinite runner style game which should be pretty simple, the character only moves in one direction with limited actions. The second is a more complex story-based platformer. Here the characters will move in all four directions, jump, shoot, shoot while jumping, shoot forward while running backwards, etc.

However in either case, I can see these questions being relevant. Even when there is very little animation, is it better to go for flexibility and smoothness, or for good detail?

I think Mark of the Ninja showcases what I'm looking for very well, even knowing that I probably can't hit that level of production quality with one developer and one artist. For that game, it looks like each animation frame is completely drawn, but it's so smooth and dynamic that it's hard to tell.

So which method is better given the output that I'd like? Or would it be better to do a hybrid in some way?

\$\endgroup\$

closed as primarily opinion-based by Philipp, DMGregory May 3 '18 at 11:57

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • \$\begingroup\$ Generally rigged sprites show separate limps because people don't really bother doing anything wonderful with them ( company time/deadlines as well). The quality of rigged sprites comes down to how much effort/time you put in them, same counts for frame by frame animation. You also pretty much gave your own asnwers. There is no "best". You have to consider your workflow and what suites your style better. We can't make that decision for you. Here is a setup for some complex rigging in spine.. \$\endgroup\$ – Sidar Mar 29 '18 at 16:59
  • 1
    \$\begingroup\$ It's funny that you bring up Mark of the Ninja specifically as an example of good-looking spritesheets (method 1), when it's actually done using method 2. You can learn more about Klei's animation process from their GDC talk on the subject. As I mentioned to you previously though, we can't select a technique for you. You know the pros & cons, and past games have proven that each can be executed successfully. Choosing one is up to you. \$\endgroup\$ – DMGregory Mar 29 '18 at 17:10
  • 2
    \$\begingroup\$ One more pro of method 2: adding new characters is very easy. Just draw all the parts once, and reuse the same animations. For an infinirunner this is a very common use case. \$\endgroup\$ – Ed Marty Apr 1 '18 at 12:12
2
\$\begingroup\$

I must say I strongly disagree on some of your pros and cons. The keyframe method in my opinion is a much better choice, both for the animator and the programmer. It is (usually) less work for both the programmer and the artist. Each frame does not necessarily look more connected with sprite sheet animation, on the contrary, it may look worse than key animation (see this example) unless you take extra care tailoring each and every frame (which is time consuming).

It is not more work for the developer when using key frame animation (I guess it also depends on the tools you are using), but you can have tooling where the developer only cares about playing the correct animation in the game, it being idle, walking, running or jumping. There is no need to animate anything for the programmer. However, some advanced animation can be done using inverse kinematics where you manipulate the skeleton of the character using the mouse pointer for aiming.

Having key frame animation is also less space consuming because you deal with less sprites.

There are games that look good using both methods, but in my opinion go for the key animation method. Mark of Ninja is probably used with key frame animation. Rayman Legends is also made with that method. I think this method will save time for both the artist and the developer, and the game will probably look better. This being my two cents.

\$\endgroup\$
1
\$\begingroup\$

My answer is here as a complement to John's answer. And I will directly point to an excellent article published in Gamasutra : 5 tips for making great animations for 2D games.

I think that your choice should be made depending on your artistic vision of your game (and budget and time). While John covered some good aspects of key frame animation, sprite sheets allow you to breath life into your creation like nothing else. It is the main problem with rotoscoping, your characters move according to physics, but the artistic result if far from what you can see from great animators. You can even see it in the example page provided by John : "Spine with frame based animation" (watch some old Disney movies, or some greatly animated 2D games that don't use rotoscoping).

At the end, using softwares like Spine will maybe save you time and money, but if you want to really do complex things, to create bigger-than-life animation, you will have to go the sprite-sheet way (even with Spine).

My advice for you in particular is :

  1. Try to define the artistic style you want for your game, the feeling, the atmosphere (you already made some researches by quoting Mark of the Ninja as inspiration, but go a step further)
  2. According to the answer of point 1, try to find an artist that have necessary skills to create your vision. Hire someone who can do the job according to the method you chose.

TL;DR, before trying to balance pros and cons, try to find an artistic perspective for your game. I don't think that art is a problem to resolve, but the embodiment of a vision you have for your game. If you miss money or time, change your goals and choose the appropriate tool (which can be sprite-sheet, key frame animation, or both).

\$\endgroup\$
  • \$\begingroup\$ I'm not sure if I understand your point about rotoscoping. I don't see why you can't rotoscope with either method. I imagine the techinique is better suited for sprite sheet as that's what it was designed for, but you can still follow motion, right? For the link you provided, I do see some examples where you couldn't use keyframes, like the Scott Pilgrim one, but that seems to only work in a static context anyway. If you wanted to run that jumping, or crouching, you'd want to combine at least some elements. But I guess you could use a sheet still. Thanks for the thoughts, was helpful! \$\endgroup\$ – TechnoSam May 2 '18 at 15:28

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