文档章节

创建和销毁物体

LIndieGS
 LIndieGS
发布于 2017/05/28 16:40
字数 304
阅读 36
收藏 0
点赞 0
评论 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

【UE4】蓝图中实现Projectile伤害、碰撞体伤害

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

typantk ⋅ 03/23 ⋅ 0

Unity3D学习笔记(二)Unity的JavaScript基础

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

qq570842253 ⋅ 2014/08/27 ⋅ 0

Unity3D中自带事件函数的执行顺序

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

qq_38150068 ⋅ 05/17 ⋅ 0

Unity动画丨9.木头自转、扛起木头、OnTriggerEnter

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

weixin_38239050 ⋅ 04/08 ⋅ 0

Unity资源管理原理知识

最近unity 当需要频繁创建一个物体对象时,怎样减少内存. 这里写下关于Unity3D对于内存的管理与优化. Unity3D 里有两种动态加载机制:一个是Resources.Load,另外一个通过AssetBundle,其实两...

NickHomeSelf ⋅ 2016/08/18 ⋅ 0

【转】Unity资源管理原理知识(干货不嫌长)

最近unity 当需要频繁创建一个物体对象时,怎样减少内存. 这里写下关于Unity3D对于内存的管理与优化. Unity3D 里有两种动态加载机制:一个是Resources.Load,另外一个通过AssetBundle,其实两...

小姚 ⋅ 2015/02/25 ⋅ 1

UE4入门单词及蓝图节点 (作者初学时的个人笔记)

因为作者英语水平很渣,学习UE4又面临众多陌生单词 于是将见到的所有默认的单词都一一记录,每天看一遍, 尽量保重自己第二次碰见的时候能认识,然后日积月累 遇到的陌生单词也越来越多,记录...

qq_36409711 ⋅ 2017/11/05 ⋅ 0

Unity3D中常用的几种系统自调用方法的执行顺序及其作用

首先,我们有必要说明一下他们的执行顺序: awake--start--update--fixedupdate--lateupdate--OnGUI--reset--onDisable--onDestory Awake用于在游戏开始之前初始化变量或游戏状态。在脚本整个...

小姚 ⋅ 2014/02/13 ⋅ 0

【Unity3D基础概念】给初学者看的Unity概览(一):GameObject,Compoent,Time,Input,Physics

点击进入我的新博客 作者:王选易,出处:http://www.cnblogs.com/neverdie/ 欢迎转载,也请保留这段声明。如果你喜欢这篇文章,请点推荐。谢谢! Unity3D重要模块的类图 最近刚刚完成了一个...

王选易 ⋅ 2014/05/29 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

NFS介绍 NFS服务端安装配置 NFS配置选项

NFS介绍 NFS是Network File System的缩写;这个文件系统是基于网路层面,通过网络层面实现数据同步 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导...

lyy549745 ⋅ 21分钟前 ⋅ 0

Spring AOP 源码分析 - 筛选合适的通知器

1.简介 从本篇文章开始,我将会对 Spring AOP 部分的源码进行分析。本文是 Spring AOP 源码分析系列文章的第二篇,本文主要分析 Spring AOP 是如何为目标 bean 筛选出合适的通知器(Advisor...

java高级架构牛人 ⋅ 44分钟前 ⋅ 0

HTML-标签手册

标签 描述 <!--...--> 定义注释。 <!DOCTYPE> 定义文档类型。 <a> 定义锚。超链接 <abbr> 定义缩写。 <acronym> 定义只取首字母的缩写。 <address> 定义文档作者或拥有者的联系信息。 <apple......

ZHAO_JH ⋅ 46分钟前 ⋅ 0

SylixOS在t_main中使用硬浮点方法

问题描述 在某些使用场景中,应用程序不使用动态加载的方式执行,而是跟随BSP在 t_main 线程中启动,此时应用代码是跟随 BSP 进行编译的。由于 BSP 默认使用软浮点,所以会导致应用代码中的浮...

zhywxyy ⋅ 53分钟前 ⋅ 0

JsBridge原理分析

看了这个Github代码 https://github.com/lzyzsd/JsBridge,想起N年前比较火的Hybrid方案,想看看现在跨平台调用实现有什么新的实现方式。代码看下来之后发现确实有点独特之处,这里先把核心的...

Kingguary ⋅ 今天 ⋅ 0

Intellij IDEA神器常用技巧五-真正常用快捷键(收藏级)

如果你觉得前面几篇博文太啰嗦,下面是博主多年使用Intellij IDEA真正常用快捷键,建议收藏!!! sout,System.out.println()快捷键 fori,for循环快捷键 psvm,main方法快捷键 Alt+Home,导...

Mkeeper ⋅ 今天 ⋅ 0

Java 静态代码分析工具简要分析与使用

本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能、特性等方面对它们进行分析和比较,...

Oo若离oO ⋅ 今天 ⋅ 0

SpringBoot自动配置小记

spring-boot项目的特色就在于它的自动配置,自动配置就是开箱即用的本源。 不过支持一个子项目的自动配置,往往比较复杂,无论是sping自己的项目,还是第三方的,都是如此。刚接触会有点乱乱...

大_于 ⋅ 今天 ⋅ 0

React jsx 中写更优雅、直观的条件运算符

在这篇文字中我学到了很多知识,同时结合工作中的一些经验也在思考一些东西。比如条件运算符 Conditional Operator condition ? expr_if_true : expr_if_false 在jsx中书写条件语句我们经常都...

开源中国最帅没有之一 ⋅ 今天 ⋅ 0

vim编辑模式与命令模式

5.5 进入编辑模式 从编辑模式返回一般模式“Esc” 5.6 vim命令模式 命令 :“nohl”=no high light 无高亮,取消内容中高亮标记 "x":保存退出,和wq的区别是,当进入一个文件未进行编辑时,使...

弓正 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部