Rotating linked sprites

I am trying to animate this fish, that can swim around. I built it first in unity a few months back:

I’m just wondering what I could do to have the fins and the tail as separate sprites, that can rotate a tiny bit on their own, but also make it so that they stick to the body in a logical manner. Any help would be appreciated.

Unity is a game engine and they implement a lot of stuff for you. MonoGame is a framework where you you are provided with an API to do things like rendering and audio, but the implementation is left to you. So to do this, you’re going to have to come up with some kind of object structure yourself.

A SpriteBatch.Draw call has options to specify rotation, as well as origin, so you can definitely do this. You’ll just have to create an object structure that supports defining child objects that are at offsets from the parent object’s origin. There’s lots of examples of this about the internet, look into “Scene Graphs”. Some of this functionality might even be built into one of the libraries people have made for MonoGame, such as MonoGame.Extended, though I’m not sure if that one in particular has any scene graph capabilities.

You might check out the things listed here…

Good luck!
(and cool game :D)

Thank you!