Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

AssetDatabase.CreateAsset

Объявление

public static void CreateAsset(Object asset, string path);

Параметры

asset Объект для использования при создании актива.
path Путь в файловой системе для нового актива.

Описание

Создает новый собственный ресурс Unity.

Используйте этот метод для создания собственного ресурса Unity. Нативные ресурсы создаются Unity (либо в редакторе, либо с помощью скрипта) в сериализованном формате Unity.

Если ресурс уже существует, указанный вами путь будет перезаписан новым ресурсом. Путь указан относительно папки проекта, например: "Assets/MyStuff/hello.mat".

Файл ресурса может содержать несколько ресурсов. После создания файла ресурса вы можете добавить в него дополнительные ресурсы с помощью AssetDatabase.AddObjectToAsset.

Вы не можете использовать этот метод для создания актива из GameObject. Для этого используйте класс PrefabUtility.

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

Примечание. Необходимо убедиться, что указанный вами путь использует собственное расширение объекта. Например, «.mat» для материалов, «.cubemap» для кубических карт, «.GUISkin» для скинов, «.anim» для анимации и «.asset» для любых других ресурсов. Полный список нативных расширений ресурсов можно найти здесь в разделе сведений о NativeFormatImporter. Этот метод не предназначен для создания сторонних ресурсов, таких как текстовые файлы или файлы изображений.

Примечание. Вы не можете создавать ресурсы в папке потоковых ресурсов (Assets/StreamingAssets).

Этот метод сообщает об ошибке в консоли, если вы используете неправильное расширение или пытаетесь создать ресурс в папке потоковых ресурсов. Эти ошибки станут исключениями в будущем выпуске Unity.

using UnityEngine; using UnityEditor; public class CreateMaterialExample : MonoBehaviour { [MenuItem("GameObject/Create Material")] static void CreateMaterial() { // Create a simple material asset Material material = new Material(Shader.Find("Specular")); AssetDatabase.CreateAsset(material, "Assets/MyMaterial.mat"); // Print the path of the created asset Debug.Log(AssetDatabase.GetAssetPath(material)); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3