Я пытаюсь повернуть textureRegion, на основе Box2D угла тела, используя spriteBatcher рисовать метод:Вращающийся textureRegion на основе угла тела Box2D (без спрайта)
SpriteBatch.draw(TextureRegion region, float x, float y, float originX, float originY, float width, float height,float scaleX, float scaleY, float rotation)
Однако в результате вращения выглядит следующим образом
Я не могу понять, что я делаю неправильно, попробовал много разных комбинаций originX, originY, и он всегда сломан. Пытался установить происхождение в центр тела, левый нижний угол и не повезло.
Посмотрел документацию, проанализировал SpriteBatch.class, но ее непонятно, в чем причина.
Как правильно повернуть текстуру?
EDIT: Я не могу использовать класс Sprite, потому что textureRegion что втягивается является кадр анимации и AFAIK вы не можете сделать кадры анимации из Sprite класса
Я с помощью этого метода уже, как это: \t \t shape.setAsBox ((animation.getWidth() - animation.getHorizontalOffset())/200F, \t \t \t \t (animation.getHeight() - animation.getBottomOffset())/200f, новый Vector2 ((animation.getWidth() - animation.get HorizontalOffset())/200F, (animation.getHeight() - animation.getBottomOffset())/200F), 0); , но добавив 2 параметра, которые вы упомянули, делает коробку безумной. – Zerg
прежде всего сделайте простой расчет, поэтому удалите смещение и проверьте результат. – Aryan
смещение должно быть умножено на 2 – Aryan