Add this function in a subclass to get a notification when a model has completed importing.
借助此函数,您可以修改此函数引用的所导入的游戏对象、网格、动画剪辑。请注意,游戏对象、动画剪辑和网格仅在导入期间存在,导入完成后,系统会立即将其销毁。
在创建最终预制件且在将其写入磁盘之前,系统会调用此函数,因此,您可以完全控制生成的游戏对象和组件。
导入完成后,对游戏对象或网格的所有引用都将变为无效。因此,无法
通过在导入的 FBX 文件中引用网格的 OnPostprocessGameObjectWithUserProperties 在其他文件中创建新的预制件。root
是导入模型的根游戏对象。
using UnityEngine;
using UnityEditor;
// Adds a mesh collider to each game object that contains collider in its name
public class Example : AssetPostprocessor
{
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);
}
}