Для создания ассета в Unity и предоставления возможности задать его имя до создания файла следует выполнить следующие шаги:
- Откройте Unity и выберите папку, в которой вы хотите создать ассет.
- Щелкните правой кнопкой мыши в окне проекта и выберите "Create" (Создать) в контекстном меню, а затем выберите "C# Script" (Скрипт C#). Это создаст новый скрипт.
- Назовите созданный скрипт «CustomAsset» и дважды щелкните по нему, чтобы открыть его в вашей среде разработки.
- В открывшемся скрипте CustomAsset добавьте следующий код:
using UnityEngine; using UnityEditor; public class CustomAsset : ScriptableObject { [MenuItem("Assets/Create/Custom Asset")] public static void CreateAsset() { // Открывает диалоговое окно сохранения файла string path = EditorUtility.SaveFilePanelInProject("Save Custom Asset", "New Custom Asset", "asset", "Enter a name for the new custom asset"); // Проверка, был ли выбран путь сохранения if (path.Length > 0) { // Создание нового экземпляра ассета CustomAsset newAsset = CreateInstance<CustomAsset>(); // Создание ассета по заданному пути AssetDatabase.CreateAsset(newAsset, path); // Сохранение созданного ассета AssetDatabase.SaveAssets(); // Выделение созданного ассета в окне проекта EditorUtility.FocusProjectWindow(); Selection.activeObject = newAsset; } } }
- После добавления кода сохраните и закройте скрипт.
- В окне Unity выберите папку, в которую вы хотите создать ассет.
- Щелкните правой кнопкой мыши в окне проекта и выберите "Create" (Создать) в контекстном меню. В выпадающем меню вы должны увидеть новый пункт "Custom Asset".
- Когда вы выбираете "Custom Asset", откроется диалоговое окно сохранения файла, где вы можете указать имя для ассета и выбрать место его сохранения. После выбора пути сохранения ассет будет создан и сохранен в выбранной папке.
Теперь у вас есть ассет, который можно создать и назвать до фактического создания файла. Этот подход может быть полезен, когда вы хотите дать пользователям возможность настраивать имя и параметры создаваемого ассета перед его сохранением.