What free / lowcost 2d animation packages work with Godot? I started wondering this when I realized Godot doesnt use vector images.

Are SVG being planned to be used in future? Arent vectors the preferred graphics form for cell phone games?

I know I can make png frames and export them in any graphics software. But was curious what was out there for Godot?

I think I saw plugin for Asesprite, Piskel and Dragonbones. Do these work well with Godot or is it just importing pngs made with these software. BTW I used to be a piskel addict. Maybe I could try them and see how well they work. Dragonbones website looks nice, but is it any easier than just animating characters in Godot 2d bones?

Riveapp has popped up lately - it can render pngs but I havnt tried it. Website mentioned possibly watermarks on the animations- sure cant mean game assets but who knows.

I have not tried animating in Gimp, Krita 5 or Blender pencil(?)

So is there a 2d animation solution Im missing for godot?

@cybereality said: Probably Spine.

http://esotericsoftware.com/

True I didnt mention them, but I am looking for low cost solutions. Spine requires $369 per person to be able to have meshes and weighted textures, which I think dragonbones and godot both do for free.

BTW I realized I watched one of your videos on you tube like ten years ago about 3d glasses. Weird how small the digital world actually is.

In general, Godot has built in animation tools that can be used for some animations. Other than those, I've only used Spine. It's not cheap, but for what it does also not expensive and worth it in my experience.

Note that official Godot support for Spine is still in the works (https://github.com/EsotericSoftware/spine-runtimes/tree/spine-godot). Various third party solutions to use Spine with Godot exist at various states of maturity and compatability: https://www.google.com/search?q=spine+godot+site:github.com

Actually a lot of 2D animators in the industry use tools like Maya. Everyone only thinks of them as 3D tools, but you can use the same animation features for 2D objects as well. So I would recommend doing this in Blender.

The only small success I've had with 2d animation is to do a dummy type player in 3d, animate it, save it in frames, and paint over it with any art software. The shape only has to resemble the animated player, it doesn't have to exactly look like it. Even those animations that use parts of bodies drives me crazy trying to rotate and place them. My preferred method is to make the character fully in 3d, cell shade it, and save it in frames. You can tell, but it looks all right. Blender has a pretty good feature called freeline or something like that, which adds lines to it that look somewhat natural.

Well a 2D character can just be a detailed flat plane. Or you could make separate planes for each body part. Either way, you can rig it and add bones and animate just like 3D. A lot of games do this, it is rare for animation to be done by hand, unless for specific looks, like SkullGirls or pixel games like Celeste.

Here are some comparisons with spline:

Blender / Coatools free vs Spline (pro- the $300+ ver)

Dragonbones free vs Spline (pro- the $300+ ver)

I need to search as see just how well these work in Godot.

I have not found one for Rive app vs anything. But in Riveapp you create the SVG images in the app or can only import SVG images one at a time. Does not support Godot but will render pngs.

My wife used to own software that let you create and animate svg. Back when in 2009 I wrote a game clone of plants vs zombies and she used that software to animate the characters. Have no idea what it was- she bought it at Target. Have no idea if it still exists or would be viable against modern animations.

There's not much sense for Godot to support SVG in any way beyond rasterizing it on import. GPUs can't deal with vector graphics. They need either pixels or triangle meshes. Although strictly speaking, the latter could be considered a rudimentary form of vector graphics.

@xyz said: There's not much sense for Godot to support SVG in any way beyond rasterizing it on import. GPUs can't deal with vector graphics. They need either pixels or triangle meshes. Although strictly speaking, the latter could be considered a rudimentary form of vector graphics.

Hmm. So SVG's are solely a CPU process? Fascinating, I thought they were triangles. I wonder why vector hasnt been optimized for triangles you'd think that would be an important aspect to have. Especially now with the need for online cad, printing and whatnot.

Anyway created and animated a very small animation with Dragonbones. Pretty easy. So I am gonna make the same animation in Godot Skeleton2d and see hard it is. I saw Creature also exports to Godot. I should probably try blender as well.

Correct, vectors cannot be displayed on a screen, because a screen is an array of pixels, so everything must be rasterized. 3D models themselves are in fact vectors (usually straight lines, but curved surfaces are possible by rendering to lines first). And then the GPU does the work to translate this into pixels. That is basically the only thing the GPU does, is convert vectors to pixels and then warp images onto them. There are ways to accelerate this on the GPU, for example for font rendering, but it is niche and not built into the hardware.

Vector illustration also must be converted to pixels before doing anything with it. Even Flash, which I used quite heavily in the 2000's could not display vectors, only pixels. They had a run-time engine that would do this on the fly on CPU, but it was quite slow and also the main reason performance sucked on Flash games. Later on you could pre-render to bitmaps and this increased performance about 100 times or more. There is really no good reason to ever use vectors at run-time as they cannot be displayed in any case, you are just offloading a process that should be precomputed to run time on a users computer, with no visual difference (or even a loss in quality, most likely, because precomputed rasterization can use higher quality algorithms than run time, especially if your users are on old computers). So it's pointless.

That said, there did used to be actual vector displays. Like they used on the old Atari game Asteroids. In that case they used a CRT-era display, but instead on having the ray gun move in scan lines, they moved it arbitrarily to draw vector lines on the screen. It was amazing, and basically infinite resolution and infinite refresh rate (or at the very least beyond the human eye). In theory, we have the technology today to make a true full color vector display using a micro-mirror array (similar to how DLP projectors work) but I guess there is no commercial interest since it would have very limited content and 4K pixel based video already looks basically real.

That is an awesome reply and between you and XYZ I learned something today!

I did animate something with Godot's skeleton2d / animationplayer. I can see why 3rd party software is preferred. But it did the job and made a nice deformation polygon2d character for me. Now that I understand it and how animations are made in Godot the bone system really isnt even needed for simple projects where mesh deformation isnt needed as the nodes themselves kinda work the same way as bones as they follow each other and can transform etc. Godot is even more versatile than I realized.

I haven't tried it but I watched some videos and the Godot animation tools look nice. Obviously not as good as Blender, but for simple stuff it is okay and easier than switching programs all the time.

I still like 2d animation, but it's too much work unless you are doing 2 direction work. If you do a character in 3d, like a walk, it works in any direction. In 2d, you did all that work for 2 directions left and right usually. Fine for some types of games. Try doing a 3 quarter walk or something and it doesn't work well, especially if the character is walking forward or backward. I've never tried bone animation in 2d. Might try it sometime.

@fire7side said: I still like 2d animation, but it's too much work unless you are doing 2 direction work. If you do a character in 3d, like a walk, it works in any direction. In 2d, you did all that work for 2 directions left and right usually. Fine for some types of games. Try doing a 3 quarter walk or something and it doesn't work well, especially if the character is walking forward or backward. I've never tried bone animation in 2d. Might try it sometime.

true= but even in 3d animation there are 2d animations needed such gui, fx, etc. Also I enjoy 2d. But your reasoning is exactly why I went to 3d on rabbit game. plus many of the bone animators are 3d now with fixed camera view to look like 2d. plus its kinda the same thing as 3d.

2 years later