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

AssetPostprocessor

класс в UnityEditor

Описание

AssetPostprocessor позволяет подключаться к конвейеру импорта и запускать скрипты до или после импорта ассетов.

Во время импорта модели функции вызываются в следующем порядке:

  • OnPreprocessModel вызывается в самом начале, и вы можете переопределить ModelImporter параметры, которые используются для всего процесса импорта модели.
  • После импорта мешей и материалов из импортированных узлов создается иерархия GameObjects. Используйте OnPostprocessMeshHierarchy для изменения иерархии. Каждому GameObject, представляющему импортированный узел, присваивается соответствующий компонент MeshFilter, MeshRenderer и MeshCollider. Перед назначением материала MeshRenderer вызывается функция OnAssignMaterialModel.
  • После того, как GameObject инициализирует MeshRenderers и данные пользователя существуют, OnPostprocessGameObjectWithUserProperties вызывается. Это происходит до того, как будут созданы дочери GameObjects.
  • Если на предыдущих стадиях генерация анимации не была отключена (см. ModelImporter.generateAnimations), то генерируются SkinnedMesh и Анимации. Если это возможно, то также создается Аватар и оптимизируется иерархия GameObject. Затем для корня GameObject вызывается OnPostprocessModel.

OnPreprocessSpeedTree и OnPostprocessSpeedTree вызываются на ресурсах SpeedTree (файл .spm) так же, как OnPreprocessModel и OnPostprocessModel, за исключением того, что тип assetImporter является SpeedTreeImporter.

Важно: Если вы изменяете код AssetPostprocessor, по умолчанию следует увеличивать номер его версии с помощью GetVersion. Например, при изменении выхода AssetPostprocessor или заявленных им входных зависимостей. Дополнительную информацию см. в Последовательность импортера.

Свойства

Свойство Описание
assetImporterСсылка на импортера ассетов.
assetPathИмя пути импортируемого ассета.
contextКонтекст импорта.

Открытые методы

Метод Описание
GetPostprocessOrderВозвращает приоритет порядка выполнения для этого постпроцессора ассета.
GetVersionВозвращает версию постпроцессора ассета.

Сообщения

Сообщение Описание
OnAssignMaterialModelПодаёт исходный материал.
OnPostprocessAllAssetsЭта команда вызывается после завершения импорта любого количества ассетов (когда строка прогресса ассетов достигает конца).
OnPostprocessAnimationЭта функция вызывается, когда AnimationClip завершает импорт.
OnPostprocessAssetbundleNameChangedОбработчик, вызываемый при назначении ассета другому пакету ассетов.
OnPostprocessAudioДобавьте эту функцию в подкласс, чтобы получить уведомление, когда аудиоклип завершил импорт.
OnPostprocessCubemapДобавьте эту функцию в подкласс, чтобы получить уведомление перед тем, как текстура кубического сопоставления завершит импорт.
OnPostprocessGameObjectWithAnimatedUserPropertiesВызывается при завершении импорта кривых анимации для пользовательского свойства типа float.
OnPostprocessGameObjectWithUserPropertiesПолучает вызов для каждого GameObject, к которому в импортированном файле было прикреплено хотя бы одно свойство пользователя.
OnPostprocessMaterialДобавьте эту функцию в подкласс, чтобы получать уведомление при создании нового Материала во время импорта ModelImporter.
OnPostprocessMeshHierarchyЭта функция вызывается после завершения импорта новой иерархии преобразований.
OnPostprocessModelДобавьте эту функцию в подкласс, чтобы получить уведомление о завершении импорта модели.
OnPostprocessPrefabПолучает уведомление, когда Префаб завершает импорт.
OnPostprocessSpeedTreeДобавьте эту функцию в подкласс, чтобы получить уведомление, когда ассет SpeedTree завершил импорт.
OnPostprocessSpritesДобавьте эту функцию в подкласс, чтобы получить уведомление, когда текстура sprite(s) завершила импорт.
OnPostprocessTextureДобавьте эту функцию в подкласс, чтобы получать уведомление, когда texture2D завершает импорт перед сжатием Unity.
OnPostprocessTexture2DArrayДобавьте эту функцию в подкласс, чтобы получать уведомление, когда texture2DArray завершает импорт перед сжатием Unity.
OnPostprocessTexture3DДобавьте эту функцию в подкласс, чтобы получать уведомление, когда texture3D завершает импорт перед сжатием Unity.
OnPreprocessAnimationДобавьте эту функцию в подкласс, чтобы получить уведомление перед импортом анимации из модели (.fbx, .mb файл и т.д.).
OnPreprocessAssetДобавьте эту функцию в подкласс, чтобы получить уведомление перед импортом любого Ассета.
OnPreprocessAudioДобавьте эту функцию в подкласс, чтобы получить уведомление перед импортом аудиоклипа.
OnPreprocessCameraDescriptionДобавьте эту функцию в подкласс, чтобы получать уведомление при импорте камеры из Импортера моделей.
OnPreprocessLightDescriptionДобавьте эту функцию в подкласс, чтобы получать уведомление при импорте света из Импортера Модель.
OnPreprocessMaterialDescriptionДобавьте эту функцию в подкласс, чтобы получать уведомление при создании нового материала во время импорта ModelImporter.
OnPreprocessModelДобавьте эту функцию в подкласс, чтобы получить уведомление перед импортом модели (.fbx, .mb файл и т.д.).
OnPreprocessSpeedTreeДобавьте эту функцию в подкласс, чтобы получить уведомление перед импортом ассета SpeedTree (файла .spm).
OnPreprocessTextureДобавьте эту функцию в подкласс, чтобы получить уведомление перед запуском импортера текстур.