hey, I'm making a 2D sprite-based game, but I wanted to make animations for each item, and this would be more work because my game has many items and many player animations, but I was fine with this. But then I realised I couldn't add different armour to my player sprite otherwise I would multiply all my item animations by 2 and that would be way too much work. Is there anything that I could do instead for 2D game that lets me keep my nice animations without that stupid amount of work?
There are techniques that you can use to save you a lot of time, but it all depends on how your game looks and how far you’re willing to make trade-offs.
For instance, to have multiple armors or items in general, a simple way of reusing your animations would be to use color swapping, either by using Godot’s modulate/self modulate properties, or a custom shader.
Color swapping can look like this:
Another example with color swapping: say you have characters of different skin colors. One way you could handle that smartly would be to use non colored textures for the body parts, and then color them using modulate property.
Another thing that’s used a lot to reuse animations is to use a rig. Basically, the idea is to animate a skeleton (which can be 2D or 3D), and then, get that skeleton dressed with your clothes/items/armors/etc. Since the skeleton is the animated object, you can attach whatever you want on it, as long as each object is attached to the right bone of the skeleton, everything will work fine.
Anyway, I think that to get proper advices, you should share some visuals of your games and your animations!
I have a topdown 2d game that looks a lot like darkwood, my player animations are quite layered. The game darkwood doesn’t have different clothes or armours so it just had a few animations for some items and weapons while not changing from the normal animations if it doesn’t need to example holding a building material. I do want my game to be able to show everything all the time, and I know this would work better in a 3D game where you could parent items to bones or make different clothing items for your character and just reuse the same animations, but I really wanted to get the same feeling in a 2D game and I was going to do that with many animations until I realised that wasn’t going to work