Why doesn't the Sprite class simply have access to a Size member where we can set it's size with a method or a Size Property that we can set a Size on?
It will as soon as it gets added back into the C++ side of things (which won't happen).
Lacking documentation...
The docs are not lacking, everything is fully documented.
...it appears that the purpose of TransformRect() is to change the size of the sprite
TransformRect(...) is a member of the
Tranform class. I don't see why you would think this would change the size of a sprite.
It is clearly documented as what it does. When it comes to using an API, don't assume stuff - read the docs, they weren't written to be ignored.
This is not very intuitive and seems like something that would be taken care of by the Scale property
The
Scale property will change the size of the sprite by adjusting the transform. To calculate the scale (in order to achieve a specific size) simply divide the desired size by the texture size.
sprite.Scale = desiredSize / (Vector2f)sprite.Texture.Size;
I think I'm going to switch back to c++
The C++ side of SFML has the same API, so that really won't change anything.