首页 > Unity3D专栏 > 【Unity3D】批量更换预设物体。
2017
07-25

【Unity3D】批量更换预设物体。

今天研究了一下批量修改预设物体

主要目的就是将一些已经摆好的物体,全部都替换成另一个物体,不知道我说的清不清楚。

上次讲到了批量创建预设,我们就在此基础上修改一下就可以了。

代码如下:

using UnityEngine;  
using System.Collections;  
using UnityEditor;    
public class DJH_Unity : MonoBehaviour {  
    [MenuItem("Tools/ChangePrefab")]  
    public static void BatchPrefab()  
    {  
        Transform tParent = ((GameObject)Selection.activeObject).transform;  
        Object tempPrefab;  
        GameObject tt = GameObject.Find("XXX");  
        int i = 0;  
        foreach (Transform child in tParent)  
        {  
            tempPrefab = EditorUtility.CreateEmptyPrefab("Assets/Prefab" + child.name + ".prefab");  
            tt.transform.position = child.position;  
            tt.transform.rotation = child.rotation;  
            tempPrefab = EditorUtility.ReplacePrefab(tt, tempPrefab);  
            i++;  
        }  
    }  
}  

先要把预设放在场景中,随便一个地方,反正最后会删掉。

GameObject tt = GameObject.Find(“XXX”);这里的XXX就是你的预设的名称,

最后的效果就是所有替换完成的预设都放在Assets下。

自己在拖进场景里就可以了。



虚拟世界提醒您:如果您觉得本文不错,快快将这篇文章分享出去吧 ,感谢您的支持和关注,谢谢!
最后编辑:
作者:虚拟世界
专注互联网技术及资讯 技术研究中心|有相关Unity3D问题或者作事宜请联系我哦!
捐 赠如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝或者微信直接向我捐款,在此非常感谢您对虚拟世界的捐赠。

留下一个回复

你的email不会被公开。