AssetDatabase.CopyAssets
Declaration
public static bool CopyAssets(string[] paths, string[] newPaths);Параметры
| Параметр | Описание |
|---|---|
| пути | Пути к файловой системе исходных ресурсов. |
| newPaths | Пути к файловой системе новых ассетов для создания. |
Возвращаемое значение
логическое Возвращает true, если операция копирования была успешной, или false, если часть процесса не удалась.
Описание
Дублирует ассеты в paths и хранит их в newPaths.
Все пути относятся к папке проекта, например: "Assets/MyTextures/hello.png". paths и newPaths должны содержать одинаковое количество элементов.
using UnityEngine; using UnityEditor;
public class AssetDatabaseExamples : MonoBehaviour { [MenuItem("AssetDatabase/Duplicate Materials")] static void DuplicateMaterials() { string[] sourcePaths = new [] { "Assets/Materials/CarMaterial.mat", "Assets/Materials/TruckMaterial", "Assets/Materials/BoatMaterial" }; string[] targetPaths = new [] { "Assets/Duplicates/Materials/CarMaterial_Dup.mat", "Assets/Duplicates/Materials/TruckMaterial_Dup", "Assets/Duplicates/Materials/BoatMaterial_Dup" }; if(!AssetDatabase.CopyAssets(sourcePaths, targetPaths)) Debug.LogWarning($"Failed to copy assets"); } }
Вы не можете использовать эту функцию во время импорта (либо в процессе, либо из asset worker), поскольку это приведет к созданию новых ассетов в середине импорта. Любые ошибки и предупреждения от операции копирования сообщаются в журнале и консоли.