Unity3D常用 API 之实例化与销毁

时间:2022-01-09 17:30:51

1.实例化游戏物体

1.1.游戏中的案例介绍

在很多 MMORPG 类的游戏中都有类似于“金钱副本”的副本关卡。在这类副

本中通常都是限定一个时间,在这个时间内玩家可以尽情的破坏,然后收集金钱。

分析游戏截图讲解场景元素:[见图]

Unity3D常用 API 之实例化与销毁

①场景中所有的坛子,模型都是一样的,坛子是预制体。

②坛子是从“天上”掉下来的,所以坛子模型身上有刚体组件。

③如果玩家在一段时间内没有打碎坛子,这些坛子会消失。

1.2.案例场景制作

①创建地面模型;(Plane)

②创建“坛子”模型,并制作成预制体;(Cube)

1.3.实例化生成 1 个坛子

实例化生成物体:

GameObject.Instantiate(Object, Vector3, Quaternion);

参数说明:

Object:用于实例化的预制体;

Vector3:实例化后生成的物体所在的位置;

Quaternion[四元数]:实例化后生成的物体的旋转状态;

Quaternion.identity:无旋转;

图解:

这里选择public(公共的)修饰,会在script面板中出现一个Go Prafab的属性,如果是private(私有的)是没有的;

Unity3D常用 API 之实例化与销毁 Unity3D常用 API 之实例化与销毁

通过拖拽就可以让goPrafab字段持有了Cube的应用,在代码中就可以访问到它了

Unity3D常用 API 之实例化与销毁

Unity3D常用 API 之实例化与销毁

运行游戏:在Create上方1M的就被实例化出了一个cube

实例化出来的物体是有clone标志的

Unity3D常用 API 之实例化与销毁

1.4.构造随机位置

位置是用 Vector3 类型进行表示的。

X,Y,Z 三个值确定了物体在三维世界中的位置。

Random.Range(min, max):生成随机数。

在 min 和 max 直接随机生成一个随机数。

图解:

Unity3D常用 API 之实例化与销毁

表示在X轴的9到-9之间、Y轴的10、Z轴的9到-9之间当中的位置其中一个位置生成

Unity3D常用 API 之实例化与销毁

Unity3D常用 API 之实例化与销毁

在演示中,可以看到每次运行了3次游戏,每次Cube产生的位置都不同,但高度不变

演示:按下键盘的一个键,就在随机位置实例化一个物体。

Unity3D常用 API 之实例化与销毁

Unity3D常用 API 之实例化与销毁

X轴和Z轴随机,Y轴不随机

Unity3D常用 API 之实例化与销毁

2.销毁游戏物体

GameObject.Destroy(Object, float);定时销毁某个游戏物体。

参数说明:

Object:要销毁的游戏物体;(自身叫gameObeject)

float:时间,多少秒后销毁;

因为销毁动作是物体自身的动作,所以我们将这个新的脚本挂载到要销毁的物体身上

Unity3D常用 API 之实例化与销毁

开始后,物体逐渐消失

Unity3D常用 API 之实例化与销毁

Unity3D常用 API 之实例化与销毁的更多相关文章

  1. Unity3D常用 API 之 Invoke 函数调用

    1.金钱副本细节完善 1.1.宝箱自动掉落 给宝箱预制体添加刚体组件即可. 1.2.实现按键宝箱批量掉落 ①将实例化生成宝箱的代码单独封装成一个函数: ②使用 for 循环,批量生成宝箱. 按一次z键 ...

  2. C++ 中超类化和子类化常用API

    在windows平台上,使用C++实现子类化和超类化常用的API并不多,由于这些API函数的详解和使用方法,网上一大把.本文仅作为笔记,简单的记录一下. 子类化:SetWindowLong,GetWi ...

  3. request对象常用API 获取请求参数的值 request应用 MVC设计模式

    1 request对象常用API   1)表示web浏览器向web服务端的请求   2)url表示访问web应用的完整路径:http://localhost:8080/day06/Demo1     ...

  4. java常用API的总结(1)

    本篇是对于这一段时间以来接触到的常用api的一些总结,便于以后的查阅.... 一.正则表达式 对于正则表达式,我的感觉就是当我们在做某些题的时候正则表达式会省去我们很多的时间,并且正则表达式的使用格式 ...

  5. Kafka命令行操作及常用API

    一.Kafka命令行操作 1.查看当前集群已存在的主题 bin/kafka-topic.sh --zookeeper hd09-01:2181 --list 2.创建主题 bin/kafka-topi ...

  6. Selenium Web 自动化 - Selenium常用API

    Selenium Web 自动化 - Selenium常用API 2016-08-01 目录 1 对浏览器操作  1.1 用webdriver打开一个浏览器  1.2 最大化浏览器&关闭浏览器 ...

  7. jedis常用API

    一.Redis Client介绍 1.1.简介 Jedis Client是Redis官网推荐的一个面向java客户端,库文件实现了对各类API进行封装调用. Jedis源码工程地址:https://g ...

  8. 16常用API

    常用API 今日内容介绍 u 正则表达式 u Date u DateFormat u Calendar 第1章 正则表达式 1.1 正则表达式的概念 正则表达式(英语:Regular Expressi ...

  9. 常用API(正则表达式、Date、DateFormat、Calendar)

    常用API 今日内容介绍 u 正则表达式 u Date u DateFormat u Calendar 第1章 正则表达式 1.1 正则表达式的概念 正则表达式(英语:Regular Expressi ...

随机推荐

  1. 基于FPGA的通信系统实验

    伪随机信号发生器 1.伪随机信号发生器原理 伪随机信号发生器又叫PN序列发生器或者是m序列发生器.m序列是一种线性反馈寄存器序列,m序列的产生可以利用r级寄存器产生长度为2^r-1的m序列,该实验中采 ...

  2. HttpModule的一些初步认识

    新建一个类 ValidaterHttpModuleEvents继承管道接口 IHttpModule,代码如下 public class ValidaterHttpModuleEvents:IHttpM ...

  3. Mysql中的视图

    什么是视图 通俗的讲,视图就是一条SELECT语句执行后返回的结果集.所以我们在创建视图的时候,主要的工作就落在创建这条SQL查询语句上. 视图的特性 视图是对若干张基本表的引用,一张虚表,查询语句执 ...

  4. android开发实现静默安装(root权限)

    方式是将应用设置为内置的系统应用,注意事system/app目录下面,采用copy2SystemApp()方法就可以,注意chmod 777的权限,若是直接将apk拷贝到system/app目录,没有 ...

  5. 放在jsp头部的代码

    String path = request.getContextPath(); String basePath = request.getScheme()+"://"+reques ...

  6. Javascript参数传递中值和引用的一种理解

    值(value)和引用(reference)是各种编程语言老生常谈的话题,js也不例外. 我将剖析一个例子的实际运行过程,跟大家分享我对js参数传递中的值和引用的理解. 参考官网数据类型的两种分类,本 ...

  7. SSM整合中遇到的不能扫描注解的bug

    我的开发环境为: ubuntu14.04LTS 64bit; Spring Tool Suite  3.5.0.RELEASE Maven 3.2.3 SSM整合中遇到的不能扫描注解的bug 最终解决 ...

  8. Android异常分析(转)

    关于异常 异常? 异常就是一种程序中没有预料到的问题,既然是没有预料到的,就可能不在原有逻辑处理范围内,脱离了代码控制,软件可能会出现各种奇怪的现象.比如:android系统常见异常现象有应用无响应. ...

  9. Java 200+ 面试题补充② Netty 模块

    让我们每天都能看到自己的进步.老王带你打造最全的 Java 面试清单,认真把一件事做到最好. 本文是前文<Java 最常见的 200+ 面试题>的第二个补充模块,第一模块为:<Jav ...

  10. mysqldiff差异比较

    1.安装mysql-utilities[root@localhost soft]# yum install  mysql-utilities.noarch 2.比较数据库zentao和数据库db_ze ...