您的位置:首页 > 移动开发 > Unity3D

【Unity3D自学记录】批量更换预设物体。

2014-03-17 15:01 381 查看
今天研究了一下批量修改预设物体

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

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

代码如下:

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