Проблема при переворачивании 2D-спрайта в UnityC#

Место общения программистов C#
Anonymous
Проблема при переворачивании 2D-спрайта в Unity

Сообщение Anonymous »

У меня есть 2D-персонаж, который может двигаться влево и вправо и прыгать. исходный спрайт персонажа расположен слева направо (голова в правильном направлении). когда персонаж движется назад, он поворачивает спрайт влево, но когда это происходит, коллайдер Box (зеленый прямоугольник), отвечающий за столкновения, смещается относительно персонажа. Мне нужно, чтобы при переворачивании спрайта он оставался на том же месте, не выходя из коллайдера Box. Как это исправить? примечание: я использую свойство SpriteRenderer.flipX, чтобы перевернуть спрайт.
Обычный спрайт
Перевернутый спрайт
(обратите внимание, что зеленый прямоугольник, коллайдер, немного смещен относительно спрайта)
Я уже пробовал умножить Transform.localScale.x на -1, но это создало еще одну проблему.

Подробнее здесь: https://stackoverflow.com/questions/785 ... e-in-unity

Вернуться в «C#»