UnityEditor 编辑器间快速复制粘贴

本文介绍了在UnityEditor中如何实现编辑器间文件的复制和粘贴。通过PowerShell可以将文件夹复制到剪切板,而在编辑器间复制,会将文件路径序列化后复制到文本,再读取粘贴。同时提到了通过导出导入包来处理依赖。在粘贴时需禁用Unity的自动刷新功能。更多内容可参考paws3d爪爪学院的相关教程和交流群。
摘要由CSDN通过智能技术生成

从编辑器到剪切板

Unity编辑器里没办法像C# Winform 一样直接向系统剪切板添加文件夹,只能复制文本,但是PowerShell可以,在UnityEditor里又可以执行Powershell。所以通过执

从编辑器到编辑器

虽然可以通过powershell可以加入文件列表到剪切板, 但是没发现通过powershell粘贴,这边比较坑爹。不过可以通过代码获取到复制的文本:

GUIUtility.systemCopyBuffer

所以采取的办法是,如果在编辑器间复制,把文件列表路径,存起来序列化后复制到文本,然后粘贴时读取系统的剪切板 然后解析下路径列表,再通过C#执行复制粘贴擦操作。

此外,有时需要通过导出导入包来复制,以便识别到依赖。道理相同,在一边导出,把列表文本写到剪切板。

直接复制

[MenuItem("Assets/复制 - 编辑器复制", false, 21)]
private static void CopyToEditor()
{
    ClipItem item = new ClipItem(ContentType.File);
    foreach (var guiD in Selection.assetGUIDs)
    {
        string path = AssetDatabase.GUIDToAssetPath(guiD);
        item.Values.Add(AssetPath2FullPath(path));
    }
    CopyClipboardItem(item);
    Debug.Log("已复制" + Selection.assetGUIDs.Length + "条数据ÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值