This is seriously amazing! Makes me want to instantly create something with Plinth and some more Selba Ward elements.

Thank you!I just wanted some examples of what the Selba Ward stuff might be used for and this sort of thing seemed the quickest and easiest way. It turned out not to be as quick as I hoped with having to create all those resources

Plinth's animation tracks were the backbone of this animation. Having now used it quite throughly, I have more of an idea on how I think those tracks should probably evolve.

I don't know, I think they are on the right side: if you turn right, the propulsion is drawn on the left, "pushing" the object to rotate clockwise, but hey, I'm no rocket scientist

It does feel a bit odd in the animation, but they are on the right side. What I think makes it feel odd is the fact that they are pretty much centered around the center of mass, as such they wouldn't really introduce a spin and more of a left/right movement. If you want to add spin to an object in space, you'll have to accelerate it off-center. So a better placement would probably be at the front of the craft.

@AFSAs eXpl0it3r said, it looks odd because they're on the wing tips around the centre. Whether they are on the correct side or not would depend on your choice of to place the thrust on the front or the back of the craft. They are on the correct side if used on the front. However, the back of the craft seems to move a significant amount more than the front does (I presume the centre of rotation is closer to the front) so I think it would make more sense to place the rotational thrust at the back (on the opposite side to where it is now). That said, you could do both; to rotate in space and stay stationary, you would thrust left from the front while thrusting right from the rear. As mentioned earlier, the centre of rotation seems to be closer to the front so the front thrust would be less.

I'll take a look at the implementation of "sw::Sprite3d", I'm curious of how you did it.

There are two parts to it really. One, it breaks down (subdivides) a quad into multiple quads (and then triangles) so that the texture can more predictable, and two, it transforms those points in actual 3D space using a compacted matrix.Before adding depth to the origin, the matrix was even more compact I can't remember whether or not each point (quad corners) is transformed using the matrix or just the four outer corners and then interpolated. I think the former.

There is a slightly "hacky" feel to the class, though. Things have to be updated whenever it is drawn as something may have been changed. This led to lots of things being mutable, for example - this is simply because SFML's draw is const; I wanted it to be able to used similarly to a standard sprite - no requirement for an update method.

^ Thanks for the suggestions. Now that you guys mention it, it does indeed look weird. The thing is, despite being in "space", the player still has to use the helicopter sprite for story reasons, so I can't use a proper "spaceship" sprite. I'll try to move the thrusters then, and probably use two at the same time, like Hapax said.