Prefabs(预设)与 Instantiate(实例化)

来源:互联网 发布:淘宝cpu散片能买吗 编辑:程序博客网 时间:2024/05/29 14:30

Prefabs(预设)是一种资源类型,可被重复使用的游戏对象。它可以被置入多个场景中,又或者能够在一个场景中被多次置入。当你在一个场景中增加一个Prefabs,你就实例化了一个Prefabs。所有Prefabs实例都是Prefab的克隆,只要Prefabs原型发生改变,所有的Prefabs实例都会产生变化

例如在做射击类的游戏时,在Hierarchy 视图中创建了子弹模型Rockety ,由于子弹要重复使用这时你就需要在Project视图中建立一个 Prefabs来存放子弹。这时你只需将子弹模型拖向Prefabs 然后删除 Hierarchy视图中的子弹模型。

181611244.png

181613362.png

2. 创建完子弹以后,你要关联角色物体(例如飞机),这时需要用到Instantiate

Instantiate:克隆原始物体。设置位置,角度。如果一个对象,组件,脚本实例被传入。将克隆整个对相爱难过的层次,以及所有子对象。

static function Instantiate (original : Object, position : Vector3, rotation : Quaternion) : Object


这是其中一个打飞机,飞机发射子弹胆码

//按下空格键或者鼠标左键发射子弹


if(Input.GetKey(KeyCode.Space) || Input.GetMouseButton (0) )

{

Instantiate (m_rocket,m_transform.position,m_transform.rotation);

//unity 的游戏体智能使用 Instantiate 函数实例化,不能使用 new

}




本文出自 “紫金飞侠雷” 博客,转载请与作者联系!

原创粉丝点击