Unity 6.3
0 онлайн 2 гостей 3 в системе
Вход

AssetPostprocessor.OnPostprocessModel(GameObject)

Описание

Добавьте эту функцию в подкласс, чтобы получить уведомление о завершении импорта модели.

Это позволяет вам модифицировать импортированный Game Объект, Meshes, AnimationClips, на который он ссылается. Обратите внимание, что GameObjects, AnimationClips и Meshes существуют только во время импорта и будут уничтожены сразу после этого.

Эта функция вызывается перед созданием окончательного Префаб и перед его записью на диск, таким образом, вы имеете полный контроль над созданными игровыми объектами и компонентами.

Любые ссылки на игровые объекты или меши станут недействительными после завершения импорта. Таким образом, невозможно создать новый Префаб в другом файле, чем OnPostprocessModel, который ссылается на меши в импортированном файле fbx.

root является корневым игровым объектом импортированной модели.

using UnityEngine;
using UnityEditor;

// Adds a mesh collider to each game object that contains collider in its name public class Example : AssetPostprocessor { // Increment the version number, when the AssetPostprocessors code/behavior is changed static readonly uint k_Version = 0; public override uint GetVersion() { return k_Version; }

void OnPostprocessModel(GameObject g) { Apply(g.transform); }

void Apply(Transform t) { if (t.name.ToLower().Contains("collider")) t.gameObject.AddComponent<MeshCollider>();

// Recurse foreach (Transform child in t) Apply(child); } }