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

EditorBuildSettings.AddConfigObject

Объявление

public static void AddConfigObject(string name, Object obj, bool overwrite);

Параметры

name Имя ссылки на объект в строковом формате. Это строковое имя должно быть уникальным в пределах вашего проекта, или для параметра перезаписи должно быть установлено значение true..
obj Oссылка на объект для сохранения. Этот объект должен быть постоянным и не null.
overwrite Логический параметр, используемый для указания того, что вы хотите перезаписать запись с таким же именем, если она уже существует..

Возвращает

void Генерирует исключение, если объект имеет значение null, не сохраняется, или если имеется конфликт имен и для параметра перезаписи задано значение false.

Описание

Сохранять ссылку на объект конфигурации по имени. Объект должен быть активом в проекте, иначе он не будет сохранен при перезапуске редактора или перезагрузке скриптов. Чтобы избежать конфликтов имен с другими пакетами, рекомендуется уточнять имена по пространству имен, например "company.package.name".

using UnityEngine; using UnityEditor; using System.IO; public class MyConfigData : ScriptableObject { public static MyConfigData GetDefault() { //name of config data object string stringName = "com.myproject.myconfigdata"; //path to Config Object and asset name string stringPath = "Assets/myconfigdata.asset"; //used to hold config data MyConfigData data = null; //if a config data object exists with the same name, return its config data if (EditorBuildSettings.TryGetConfigObject(stringName, out data)) return data; //If the asset file already exists, store existing config data if (File.Exists(stringPath)) data = AssetDatabase.LoadAssetAtPath(stringPath); //if no previous config data exists if (data == null) { //show save file dialog and return user selected path name stringPath = EditorUtility.SaveFilePanelInProject("New Config File", "myconfigdata", "asset", "Select Config FileAsset", "Assets"); //initialise config data object data = ScriptableObject.CreateInstance(); //create new asset from data at specified path //asset MUST be saved with the AssetDatabase before adding to EditorBuildSettingsAssetDatabase.CreateAsset(data, stringPath); } //add the new or loaded config object to EditorBuildSettingsEditorBuildSettings.AddConfigObject(stringName, data, false); return data; } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3