Sprite no gira alnetworkingedor de su centro después de Scaling en su centro

Si escalo un sprite en su centro, entonces trato de girarlo alnetworkingedor de su centro también, la rotation no ocurre alnetworkingedor de su centro.

Si necesita rotar, por ejemplo, una bola escalada, la forma en que está trabajando es establecer el centro de escala en la parte superior izquierda (0,0) establecer la escala que desea, y luego establecer el centro de rotation en el medio de la escala sprite, y luego aplicar el modificador de rotation.

blaBloBliSprite.setScaleCenter(0, 0); blaBloBliSprite.setScale(0.667f); blaBloBliSprite.setPosition(557, CAMERA_HEIGHT / 2 - blaBloBliSprite.getHeightScaled() / 2); blaBloBliSprite.setRotationCenter(blaBloBliSprite.getWidthScaled() / 2, blaBloBliSprite.getHeightScaled() / 2); 

Pero también quiero escalar un sprite en su centro.

¿Hay alguna forma de hacerlo?

Estás configurando el centro de rotation en el mundo, no en el sprite. Entonces, si configura el centro de rotation en (0, 0), el sprite girará alnetworkingedor de la esquina izquierda de la pantalla. Debe configurar el centro de rotation similar a este:

float centerX = sprite.getX() + sprite.getWidth() / 2;

No hay suficiente información para resolver esto, no tenemos idea de lo que hacen esas funciones. Es este software personalizado? ¿Es tecnología de alguien más?

No entiendo por qué uno incluso necesita un "centro de escala". Parece una tecnología demasiado complicada para algo tan simple.

Intente configurar el centro de rotation con el ancho / alto sin escala. Es muy probable que la tecnología haga la rotation antes de escalar. Como tal, estás escalando el centro dos veces, lo que compensaría tu centro y causaría una mala rotation y posiblemente un posicionamiento.