Unity3D之预设


 

预设的两个特性:

1.重用性。可以使我们快速方便的创建大量的重复性资源。这种创建是通过预设的实例化Instance操作来完成的
在Hierarchy视图中将实例物理添加到Assests中,此时图标变成蓝色的小方块,只需将其拖拽到Scene视图中即可完成预设的创建(即Instance克隆),修改原始实例即可完成所有克隆实例的修改。此特性称为预设的继承性。也可修改克隆实例的对象,此时其修改的属性标签粗体显示,对原始实例的修改不会影响到单独实例的修改。达到修改克隆实例的一部分的效果,当点击Apply时,所有的克隆实例及原始实例都使用此属性了(字体不再是粗体表明不再是重载了)此特性称为预设的重载特性(Override)。
 2.运行实例化。运行实例化是指我们可以在程序运行进执行实例化操作。

首先,建一个C#脚本

 

using UnityEngine;
	using System.Collections;
	public class prefabbrick : MonoBehaviour {
		public Transform brick;
		// Use this for initialization
		void Start () {
			for (int i = 0; i < 5; i++) {
				for (int j = 0; j < 5; j++) {
					Instantiate(brick,new Vector3(i,j,0f),Quaternion.identity);
				}
			}
		}
	}

然后在 Unity编辑窗口新建Cube,在Project视图中创建一个新的prefab,重命名为brickprefab,拖拽Cube物体到brick预设中,此时brickprefab图标变为蓝色小方块,Cube可以删除,然后拖拽brick脚本到空的游戏对象,并将brickprefab赋值给公共变量brick.

效果如下图所示:

 

posted @ 2013-08-12 10:53  黄忠  阅读(998)  评论(0编辑  收藏  举报