文档章节

创建和销毁物体

LIndieGS
 LIndieGS
发布于 2017/05/28 16:40
字数 304
阅读 36
收藏 0

原文链接:https://docs.unity3d.com/Manual/CreateDestroyObjects.html

    一些游戏场景中会保存有一定数量的物体,但是对角色,宝物和其他的物体在游戏过程中会被不断创建,和移除。在Unity中,一个GameObject能使用Instantiate函数来创建,它能创建一个现有物体的复制品。

public GameObject enemy;

void Start() {
    for (int i = 0; i < 5; i++) {
        Instantiate(enemy);
    }
}

    值得注意的是,那些复制品不用从场景中现有的物体来创建。更常用的方法是使用Prefab,从编辑器里的项目栏里中抓取一个到声明为public的变量里。同时,初始化一个GameObject ,会复制所有目前挂在它上面的Component。

    Destory()函数可以销毁一个物体,在一帧刷新结束之后或可以在一个短暂的延迟之后执行。

void OnCollisionEnter(Collision otherObj) {
    if (otherObj.gameObject.tag == "Missile") {
        Destroy(gameObject,.5f);
    }
}

    值得注意的是,Destroy函数可以单独销毁一个物体的组件而不影响物体本身。一个常见的错误地是写成下面这样:

Destroy(this);

     这只销毁那个调用它的脚本,而不会销毁这句话所在的脚本文件。

© 著作权归作者所有

共有 人打赏支持
LIndieGS
粉丝 0
博文 9
码字总数 6421
作品 0
程序员
Unity3D-对象池技术

什么是对象池 对象池定义:对象池就存放需要被反复调用资源的一个空间,当一个对象回大量生成的时候如果每次都销毁创建会很费时间,通过对象池把暂时不用的对象放到一个池中(也就是一个集合...

BoBoWang1991
2017/04/03
0
0
【UE4】蓝图中实现Projectile伤害、碰撞体伤害

先在人物基础类中写好 对应的属性(血量100,是否死亡这个布尔值,什么时候判定死亡) void ABaseCharacter::CalculateDead() {if (Health <= 0)isDead = true;elseisDead = false;} void AB...

typantk
03/23
0
0
Unity3D学习笔记(二)Unity的JavaScript基础

Update()每帧调用一次 LateUpdate()在Update()后执行 Awake()系统执行的第一个方法 Start()在Awake()之后,Update()之前 FixedUpdate()固定更新,可在Edit->Project Settings->Time中更改刷新...

qq570842253
2014/08/27
0
0
Unity3D中自带事件函数的执行顺序

在Unity3D脚本中,有几个Unity3D自带的事件函数按照预定的顺序执行作为脚本执行。其执行顺序如下: 编辑器(Editor) Reset:Reset函数被调用来初始化脚本属性当脚本第一次被附到对象上,并且...

qq_38150068
05/17
0
0
Unity动画丨9.木头自转、扛起木头、OnTriggerEnter

一、给场景添加木头 1、导入木头Log,找回丢失的贴图,通过Perfab的Model—Scale Factor调节导入比例—0.3 2、控制策略:通过检测木头与人物的碰撞,控制人物捡起木头 3、给木头添加Sphere ...

weixin_38239050
04/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

一生产与一消费:操作栈

1:创建栈代码如下 public class MyStack { private List list = new ArrayList(); synchronized public void push() { try { if (list.size() == 1) {......

起个昵称好难啊
22分钟前
1
0
vue中vuex简单实例

1.安装 npm install vuex --save 2.store.js import Vue from 'vue';import Vuex from 'vuex';Vue.use(Vuex);const store = new Vuex.Store({state: {count: 900000},g......

帝子兮
29分钟前
0
0
使用Golang实现网页爬虫

使用Golang实现网页爬虫

coderminer
32分钟前
1
0
30 个免费的 Sketch 必备插件

简评:中秋三天小长假,要不要学点啥?比如简单的设计?比如用 Sketch 做个项目? Sketch 有许多值得称赞的地方,其丰富的插件就是亮点之一。Sketch 的社区有着大量免费高效的插件。今天这篇...

极光推送
43分钟前
1
0
web打印控件 LODOP的详细api

web打印控件 LODOP的详细api

wangxujun59
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部