AuthorTopic: Skeletal Animation Question.  (Read 3639 times)

Offline Omar-Comin-Yo

  • 0001
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile

Skeletal Animation Question.

on: July 12, 2014, 10:05:30 am
Hi there, I'm currently working on a 2D video game, I'll refrain from boring you all with the details, suffice it to say i was intending on using simple straightforward spritesheets for character animations.
However there would be a lot of work involved (which doesn't typically bother me) but the sheer memory usage would hinder the portability of the project (ie, id need to write some seriously dirty and involved hacks to swap out memory in order to keep things running across all platforms)

There are frankly more reasons to avoid spritesheets at this point than there are to utilize them, so go skeletal and keyframe it was my gut.
That being said, i have no real experience (yet, give me a few weeks however and i'll no doubt have plenty) and one of the characters has an animation cycle that would be fairly straightforward with sprites, but i cant see how it would work on a skeletal.

Think about Johnny5,

his movement cycle had him rolling on treads however they're flexible, as if attached to suspension struts...

I was looking at making the front and rear drivewheels meet towards the middle (think like making a yapping motion with your hand) which is straightforward enough, much like skeletal leg bones joined at the hip, no issue animating that.
Where i do have issue however is that i have no way to keep the treads animated...

Again I'd have no problem doing this with conventional spritesheets frame by frame, but skeletal doesn't seem to work like that, is there a way to do this? can textures attached to bones be animated perhaps, like a combination of skeletal and conventional sprite?

Like i said, my experience is limited here and i have no idea if this is possible, i figured you guys may have some input... if you'll pardon the pun :)

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Re: Skeletal Animation Question.

Reply #1 on: July 13, 2014, 12:13:23 am
this depends on a lot of factors - the perspective of your sprite, the tools you want to use, and perhaps even style.  If you're using 3d tools to animate it, then you can do some tricks like scrolling the tread UVs to simulate the movement (the geometry would stay static, but the texture would slide across the surface).  If you didn't want to use 3d tools you could maybe break up the treads into individual pieces and animate them that way.  It'd be tedious but would work.  You could also do what you mentioned by combining bone animation with frame animation.  You'd just change the image a piece is using across the timeline.  I think both spine and spriter supports that.

Offline Omar-Comin-Yo

  • 0001
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile

Re: Skeletal Animation Question.

Reply #2 on: July 13, 2014, 05:27:46 pm
Thanks firstly for your response Indigo :)
Its likely to be entirely in 2D, side facing, anything more would require me to commit heavy rewrites to the engine.

As a very rough idea, I've done nothing at this point regarding characters or animation, I'm still banging out parallax background assets, terrain and platforms. But the problem has been rattling around in the back of my mind for a while.

As for actual packages being used, i have no firm idea (like i said, I've never went down the skeletal route before) up till now I've essentially been relying on Photoshop and Tiled to output TMX files which is fine for the environment, objects and backgrounds.

But when it comes to characters, I'm largely off the map and out of my depth here, basically I'm looking for something that will output to either binary (if its well documented), xml or json my engine is written mostly in C++ with a little C dotted around, so adding functionality for either of those would be fairly straightforward and painless.
I do like the idea of being able to sequence sprites onto a bone, this for the most part would work (with a little mucking around and editing, but that doesn't worry me)

Do you have any recommendations regarding packages that would fit the criteria?

Offline Indigo

  • Administrator
  • 0011
  • *
  • Posts: 946
  • Karma: +0/-0
  • Artist, Indie Game Dev
    • DanFessler
    • DanFessler
    • http://pixeljoint.com/p/849.htm
    • DanFessler
    • DanFessler
    • View Profile
    • Portfolio

Re: Skeletal Animation Question.

Reply #3 on: July 14, 2014, 08:28:58 pm
for what you're looking to do, I think Spriter or Spine would be best.  And the treads - if that example image is a good idea of the resolution you want to work with - would probably be best achieved with frame animation on a bone.  Both spriter and spine output to accessible text formats for engines.  Some engines have already implemented support for each of those tools.

Offline Omar-Comin-Yo

  • 0001
  • *
  • Posts: 3
  • Karma: +0/-0
    • View Profile

Re: Skeletal Animation Question.

Reply #4 on: July 15, 2014, 01:49:32 am
Thanks again Indigo :D
I'll keep you guys updated when we start moving forward with character animations as the project progresses.

Again, thanks for the input!