Исправление поворота FBX для Unity — База знаний Blender
Перейти к содержимому
Опубликовано автором KatsBits
Содержание
Ссылка, Нравится, Поделиться.
Хотя Unity может импортировать и работать с файлами *.blend напрямую (собственный формат файлов Blender), часто более полезно использовать *.fbx (FBX), в основном потому, что они не включают посторонние данные сцены, которые необходимо обрабатывать с. Однако, поскольку и среда разработки Unity, и Blender 3D используют разные стороны света — Z Up для Blender, Y Up для Unity — экспортируемый контент часто неправильно поворачивается вокруг неправильной оси; меши, которые лежат плоско в Blender, например, будут отображаться вертикально. Чтобы исправить это, сетки необходимо повернуть перед экспортом в Blender.
Примечание дизайнера : ориентацию выделения можно изменить при экспорте в настройках преобразования, но ненадежно. Информация, изложенная ниже, является отказоустойчивой опцией, которая устанавливает ориентацию в источнике, заставляя Blender и Unity учитывать данные вращения, запеченные в файле FBX.
Повернуть на X
Чтобы исправить неправильное вращение экспортированных в Blender сеток в Unity, когда объект готов к экспорту в *.fbx, в Object Mode выберите, а затем в Object Properties [1] или Transform свойств боковой панели (N), измените значение Rotation X на -90 градусов [2] (отрицательное значение 90°), например. X: -90° .
Примечание разработчика : изменения, вносимые в вращение, не зависят от ориентации объектов в окне 3D-просмотра; объект, лежащий на спине или стоящий вертикально, должен быть аналогичным образом повернут «назад».
Важно : сбивает с толку Unity также использует местоположение, поворот и масштаб объектов во время экспорта, поэтому они могут отображаться правильно при перетаскивании в 3D-вид [b], но не в браузере активов [a] в предварительном просмотре и/ или Преобразовать в Инспекторе [c]. Важно решить эту проблему, чтобы координаты объектов были согласованными и универсальными, особенно в отношении более сложных аспектов разработки.
Unity будет использовать ориентацию объектов во время экспорта из Blender, поэтому они могут отображаться правильно в некоторых представлениях [b] и редакторах, но не в других [a и c].
Шаг 1: в Blender выберите объект перед экспортом и в Object Properties [1] поверните ось X на отрицательную 90 градусов [2] в Transform properties. Это вращает объект, лежащий на спине, в вертикальном положении.
Применить вращение и масштабирование
После установки необходимого значения поворота объект необходимо «зафиксировать», в противном случае данные ориентации, экспортированные в FBX, сохранят исходную информацию вместо обновления. Для этого, когда объект все еще выделен, из Object меню [3] выберите Apply , затем Rotation & Scale [3] — Object » Apply » Rotation & Scale (альтернативно Ctrl + A). Это фиксирует и сбрасывает значение вращения обратно на 0° [4] — X теперь читается как X: 0° . Затем файл можно экспортировать в FBX и Unity.
Примечание дизайнера : если содержимое необходимо отредактировать, после поворота и установки для Unity объекты можно (повторно) повернуть обратно в исходную ориентацию (в объектном режиме — они будут отображаться повернутыми по оси X на +90 градусов, т.е. X: 90°). Любые последующие изменения в файле можно экспортировать без повторного поворота, поскольку значение X относится к объекту (локальному), а не к сцене (глобальному).
Если объекты необходимо отредактировать, их можно повернуть обратно в исходное положение [d] и экспортировать на месте после завершения — значение X является относительным, поэтому экспорт будет правильно ориентирован для Unity [e].
Шаг 2: после установки поворота его необходимо зафиксировать с помощью Применить и Поворот и масштабирование [3], чтобы сбросить значение обратно на 0 [4] с новой ориентацией сетки.