一、创建游戏对象

  游戏对象分三种:(1) 将物体模型等资源由Project工程面板拖拽到Hierarchy层次面板中 (2) 由GameObject菜单创建Unity自带的游戏对象,如Cube、Camera、Light等 (3) 利用脚本动态创建或删除游戏对象

  动态创建方式:

  (1)使用CreatePrimitive方法创建游戏对象

  (2)使用Instantiate实例化产生游戏对象 Instantiate(Object, position, rotation)

二、删除游戏对象

  Destroy(gameobject);

  Destroy(this);

  Destroy(rigidbody);

  Destroy(gameObject, 5); //延迟5秒

三、获取游戏对象

1、通过场景里面的名子或者一个路径直接获取游戏对象
  GameObject go = GameObject.Find(“GameObject”);
  GameObject go = GameObject.Find(“GameObject/Cube”);

2、通过Tag 获取单个游戏对象
  GameObject.FindWithTag(“tag”)

3、通过Tag 获取多组游戏对象
  GameObject.FindGameObjectsWithTag(“tag”)

四、添加和修改组件

  GameObject.AddComponent(className:string)

  GameObject.GetComponent(type:Type)

  eg:

  monsterTr = this.GetComponent<Transform>();

  anim = this.GetComponent<Animator>();

  nav = this.GetComponent<NavMeshAgent>();

  playerTr = GameObject.FindWithTag("Player").GetComponent<Transform>();

五、发送广播与消息

  GameObject.SendMessage: 发送消息

  GameObject.BroadcastMessage:广播消息

  GameObject.SendMessageUpwards:向上发送消息

参考链接:

  《Unity5.X游戏开发技术与实例》P63

   Unity3d获取游戏对象的几种方法:http://blog.csdn.net/aiwuzhi12/article/details/54895859

Unity3D 中的面向对象设计 {游戏对象(创建、删除、获取),以及添加修改组件}的更多相关文章

  1. 一步步学习javascript基础篇(5):面向对象设计之对象继承(原型链继承)

    上一篇介绍了对象创建的几种基本方式,今天我们看分析下对象的继承. 一.原型链继承 1.通过设置prototype指向“父类”的实例来实现继承. function Obj1() { this.name1 ...

  2. JS面向对象设计-理解对象

    不同于其他面向对象语言(OO,Object-Oriented),JS的ECMAScript没有类的概念, 它把对象定义为"无序属性(基本值.对象.函数)的集合",类似于散列表. 每 ...

  3. 第四章 python中的面向对象设计

    一.首先来理解几个面向对象的关键特性: 1.封装:对象可以将他们的内部状态隐藏起来.python中所有特性都是公开可用的. 2.继承:一个类可以是一个或多个类的子类.python支持多重继承,使用时需 ...

  4. 在Unity3D中利用 RenderTexture 实现游戏内截图

    using System.Collections; using System.Collections.Generic; using System.IO; using UnityEngine; publ ...

  5. 在nodejs中利用 Proxy监听对象值的获取

    1 window = new Proxy(global, { 2 get: function (target, key, receiver) { 3 console.log("window. ...

  6. JS操作select下拉框动态变动(创建/删除/获取)

    1.动态创建select function createSelect(){ var mySelect = document.createElement_x("select"); m ...

  7. 在WORD2007中添加修改组件

    从网上查到这个,但不知道怎么设置选项内容,及如何出现选项.能否详细说明下,谢谢!1).在开始操作前,请先点击窗口左上角的office按钮,打开word选项,在常规窗口中,勾选在功能区显示开发工具选项卡 ...

  8. Unity3D基础--动态创建和设置游戏对象

    转载自原文:http://m.blog.csdn.net/blog/smbroe/43488627 1.如何动态创建对象:调用GameObject的CreatePrimitive方法可以按模型进行创建 ...

  9. Unity3d获取游戏对象的几种方法

    1.GameObject.Find() 通过场景里面的名子或者一个路径直接获取游戏对象. GameObject root = GameObject.Find("GameObject" ...

随机推荐

  1. Redis 主从模式

    系统:Centos6.6x64安装目录:/usr/local/主:192.168.100.103从:192.168.100.104 ,下载安装: 安装依赖: # yum install gcc tcl ...

  2. spoj gss1 gss3

    传送门 gss1 gss3 spoj gss系列=最大字段和套餐 gss1就是gss3的无单点修改版 有区间查询和单点修改,考虑用线段树维护 我们要维护区间权值和\(s\),区间最大前缀和\(xl\) ...

  3. js获取当前日期时间“yyyy-MM-dd HH:MM:SS”

    获取当前的日期时间 格式“yyyy-MM-dd HH:MM:SS” 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 function getNowFormatDat ...

  4. Jetson tk1 安装 usbtoserials 驱动(重新刷机)

    一.tk1驱动包,文件系统和源码下载 截止2016年9月1号,tk1最版本为R21.5. (以下三个文件放在同一个文件夹下) 1.driver package(驱动包,相当于安装程序) https:/ ...

  5. caffe-win10-cifar10另

    上一篇主要以bat形式实现了leveldb形式的cifar10,因为对于shell脚本不甚熟悉,所以这次专门利用.sh调用来实现lmdb形式的cifar10. 1.下载数据 同上一篇. 2.数据转换和 ...

  6. 经典]Linux内核中ioremap映射的透彻理解【转】

    转自:http://blog.csdn.net/lanyang123456/article/details/7403514 几乎每一种外设都是通过读写设备上的寄存器来进行的,通常包括控制寄存器.状态寄 ...

  7. git免密配置

    1.在git安装目录下双击bash.exeC:\DevTools\Git\bin 2.在弹出窗口内输入,回车,回车ssh-keygen -t rsa -C "542113457@qq.com ...

  8. Oracle 正则表达式函数-REGEXP_REPLACE

    背景 当初写oracle的一个存储过程,以前不知道sql里也有正则表达式,关于正则表达式教程很多了,这里只是记录下Oracle也有这个功能,下次再有类似需求用这个处理的确方便很多. 想起存储过程,就想 ...

  9. uboot 传递的参数 mtdparts

    启动uboot后,在重新烧写程序之前,查看传递给内核的参数时(命令为: printenv),看到如下内容: bootargs=console=ttyS0,115200 mtdparts=spi0.0: ...

  10. ajax模拟获取json

    现在工作中我用到获取数据的方式,基本都是ajax.前台获取后端的数据后,需要进行处理,然后把他们放进页面中的相应标签里.下面举一个简单的例子,来模拟数据的获取和摆放. 这里用ng框架获取数据然后处理, ...