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); } }