Version: 2021.3
public static void ExportPackage (string assetPathName, string fileName);
public static void ExportPackage (string assetPathName, string fileName, ExportPackageOptions flags);
public static void ExportPackage (string[] assetPathNames, string fileName, ExportPackageOptions flags= ExportPackageOptions.Default);

描述

将由 assetPathNames 标识的资源导出到 fileName 中的 unitypackage 文件中。

另请参阅:ExportPackageOptions,以了解有关如何影响导出资源的信息。

using System.Collections.Generic;
using UnityEditor;
using UnityEngine;

public class AssetDatabaseExamples : MonoBehaviour { [MenuItem("AssetDatabase/Export")] static void Export() { var exportedPackageAssetList = new List<string>(); //Find all shaders that have "Surface" in their names and add them to the list foreach (var guid in AssetDatabase.FindAssets("t:Shader Surface", new []{"Assets/Shaders"})) { var path = AssetDatabase.GUIDToAssetPath(guid); exportedPackageAssetList.Add(path); }

//Add Prefabs folder into the asset list exportedPackageAssetList.Add("Assets/Prefabs"); //Export Shaders and Prefabs with their dependencies into a .unitypackage AssetDatabase.ExportPackage(exportedPackageAssetList.ToArray(), "ShadersAndPrefabsWithDependencies.unitypackage", ExportPackageOptions.Recurse | ExportPackageOptions.IncludeDependencies); } }