Unity3D: добавление слоя аниматора заставляет моего 2D персонажа парить над землей - PullRequest
0 голосов
/ 01 февраля 2020

Я занимаюсь разработкой 2D-игры в Unity и столкнулся с проблемой, которую не могу исправить, что бы я ни делал.

У меня есть персонаж игрока (файл .psb, разделенный на слои с костями, вложенными в единство). редактор скинов) с прикрепленным аниматором. В аниматоре есть два слоя - один базовый слой и один слой «фонарь» (названный так, потому что он отвечает за смешивание между обычными анимациями и теми, которые специально предназначены для удерживания фонаря). Оба слоя настроены на переопределение, фонарный слой синхронизирован, а его вес контролируется скриптом.

Мой персонаж всегда начинает постепенно взлетать, когда существует второй слой, независимо от его настроек, веса или движений состояния. , Если я удаляю слой, все проблемы исчезают. Если я отключаю «применить root движение» на аниматоре, проблема также исчезает, но, к сожалению, мне нужно, чтобы он был включен. Однако никакая анимация на самом деле не изменяет трансформацию персонажа, а только вращение костей. И теперь это становится забавным: когда я запускаю анимацию, которая изменяет позицию игрока, после ее завершения игрок больше не взлетает.

Все темы, которые я нашел, касаются 3D-ригов, которые имеют значительно больше настроек чем мои клипы 2D анимации (только 3 варианта здесь ... вздох ), и обычно решают эту проблему, выпекая в позу Y (или что-то среди этих линий) или устанавливая "Foot IK" в true. Тем не менее, все комбинации настроек как на клипах, так и на аниматоре не решают проблему (настройки «Foot IK» в состояниях аниматора также ничего не меняют, поэтому я отключил их). Единственные 3 способа помешать моему игроку бесконечно летать вверх: удалить второй слой, воспроизвести анимацию, которая изменяет позицию игрока один раз, или отключить движение root.

Кроме того, ни один скрипт не изменяет у игрока -координировать таким образом, чтобы это могло создать проблему (я отключил их всех по одному, и это не имело значения).

Я знаю, что это очень расплывчатая проблема, но я бы не стал публиковать здесь, если бы я мог решить это самостоятельно. Я не приложил ни скриншотов, ни кода, так как у меня сложилось впечатление, что это скорее теоретическая проблема ... также нет настроек комбинаций на аниматоре или клипах, которые могли что-либо изменить, так что ... скажем, если кто-то посчитает это полезным, я с радостью сделаю это.

Заранее спасибо!

С уважением, Coccho

1 Ответ

0 голосов
/ 25 февраля 2020

Обновление конвейера рендеринга по умолчанию до Universal Render Pipeline ИЛИ обновление Unity до версии 2019.3.2f1 решило проблему.

...