Описание
Абстрактный базовый класс для пользовательских средств импорта активов.
Скрипты импорта — это скрипты, связанные с определенными расширениями файлов. Они вызываются конвейером ресурсов Unity для преобразования содержимого связанных файлов в ресурсы.
Используйте класс ScriptedImporterAttribute для регистрации пользовательских средств импорта в конвейере активов.
using UnityEngine;
using UnityEditor.AssetImporters;
using System.IO;
[ScriptedImporter(1, "cube")]
public class CubeImporter : ScriptedImporter
{
public float m_Scale = 1;
public override void OnImportAsset(AssetImportContext ctx)
{
var cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
var position = JsonUtility.FromJson<Vector3>(File.ReadAllText(ctx.assetPath));
cube.transform.position = position;
cube.transform.localScale = new Vector3(m_Scale, m_Scale, m_Scale);
// 'cube' is a a GameObject and will be automatically converted into a Prefab
// (Only the 'Main Asset' is elligible to become a Prefab.)
ctx.AddObjectToAsset("main obj", cube);
ctx.SetMainObject(cube);
var material = new Material(Shader.Find("Standard"));
material.color = Color.red;
// Assets must be assigned a unique identifier string consistent across imports
ctx.AddObjectToAsset("my Material", material);
// Assets that are not passed into the context as import outputs must be destroyed
var tempMesh = new Mesh();
DestroyImmediate(tempMesh);
}
}
Публичные Методы
| OnImportAsset |
Этот метод должен быть переопределен производным классом и вызывается конвейером активов для импорта файлов. |
| SupportsRemappedAssetType |
Переопределяет этот метод, если ваш ScriptedImporter поддерживает переназначение определенных типов ресурсов. |
Сообщения
| GatherDependenciesFromSourceFile |
Статический обратный вызов, который можно реализовать для установки зависимостей артефактов от других ресурсов и оптимизации порядка импорта ваших ресурсов. |
| OnValidate |
Эта функция вызывается при загрузке модуля импорта или изменении значения в Инспекторе. |
| Reset |
Восстанавливает значения по умолчанию. |
Унаследованные члены
Свойства
| assetBundleName |
Получает или задаёт имя AssetBundle. |
| assetBundleVariant |
Получает или устанавливает вариант AssetBundle. |
| assetPath |
Путь к активу для этого импортера. (Только чтение) |
| importSettingsMissing |
Значение равно true, если с импортированным ресурсом не предоставлен метафайл. |
| userData |
Получает или устанавливает любые пользовательские данные. |
| hideFlags |
Должен ли объект быть скрыт, сохранен вместе со сценой или изменен пользователем? |
| name |
Имя объекта. |
Публичные Методы
| AddRemap |
Сопоставление субактива из импортированного актива (например, файла FBX) с внешним активом того же типа. |
| GetExternalObjectMap |
Получает копию карты внешних объектов, используемую AssetImporter. |
| RemoveRemap |
Удаляет элемент с карты внешних объектов. |
| SaveAndReimport |
Сохраняет настройки средства импорта ресурсов, если средство импорта ресурсов загрязнено. |
| SetAssetBundleNameAndVariant |
Устанавливает имя и вариант AssetBundle. |
| GetInstanceID |
Возвращает идентификатор экземпляра объекта. |
| ToString |
Возвращает имя объекта. |
Статические Методы
| GetAtPath |
Получает средство импорта ресурсов для ресурса по пути. |
| Destroy |
Удаляет игровой объект, компонент или ресурс. |
| DestroyImmediate |
Немедленно уничтожает объект obj. Вместо этого вам настоятельно рекомендуется использовать Destroy. |
| DontDestroyOnLoad |
Не уничтожает целевой объект при загрузке новой сцены. |
| FindObjectOfType |
Возвращает первый активный загруженный объект типа Type. |
| FindObjectsOfType |
Получает список всех загруженных объектов типа Type. |
| Instantiate |
Клонирует исходный объект и возвращает клон. |
Операторы
| bool |
Существует ли объект? |
| operator != |
Сравнивает, ссылаются ли два объекта на другой объект. |
| operator == |
Сравнивает две ссылки на объекты, чтобы определить, ссылаются ли они на один и тот же объект.. |