FindObjectOfType<>()   是按类型查找游戏对象.<>里面填写类型,那要是有多个这种类型的呢?来试一下.

1.

新建一个场景,新建一个Test.cs脚本,内容随便,再新建一个Test02.cs脚本,内容如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine; public class Test02 : MonoBehaviour { public Test test; // Use this for initialization
void Start () {
test = GameObject.FindObjectOfType<Test>();
} // Update is called once per frame
void Update () { }
}

2.

在场景中新建4个Cube,顺序打乱.

3.

把4个Cube弄成下图那样:

4.

把Test02挂到相机上,把Test挂到Cube01上运行,Main Camera 的inspector面板的Test02中Test显示的是Cube01;

再在Cube04上挂一个Test运行试一下,再在Cube03上挂一个Test运行试一下,再在Cube02上挂一个Test运行试一下,

此时共挂了4个,挂的顺序是01-04-03-02,可以看出来总是最后挂的那个被Test02脚本的FindObjectOfType找到.

5.

把Cube02取消激活再运行试一下,再把03取消激活试一下,再把04取消激活试一下.

可以发现系统好像有一个列表挂上Test的就加到列表里,列表里存着所有Test的激活的游戏对象,FindObjectOfType获得的是列表的最后一个,也就是最后一个挂上Test的游戏对象.,而不是任意获取一个.

系统内部具体怎么样不清楚,但根据测试来看好像是这么回事.

Unity GameObject.FindObjectOfType<>(); 按类型查找游戏对象的更多相关文章

  1. unity编辑器扩展_05(删除游戏对象并具有撤回功能)

    代码: [MenuItem("Tools/Delete",false,1)]    static void Delete()    {        GameObject[] go ...

  2. Unity让带有Rigidbody组件的游戏对象停止运动

    Rigidbody rigidbody = transform.GetComponent<Rigidbody>(); rigidbody.velocity = Vector3.zero; ...

  3. 【Unity3D游戏开发】GameObject.Find()、Transform.Find查找隐藏对象 (十)

    GameObjectFindTransformFind查找游戏对象 前置条件 相关API 1 GameObjectFind 2 TransformFind 3 其他查找 实际测试 即使隐藏root节点 ...

  4. Unity 游戏对象的组件列表

    描述: 1 个游戏对象,上面有 4 个组件, 如图: 脚本 Test_01 的内容,如下: using System.Collections; using System.Collections.Gen ...

  5. Unity GameObject

    GameObject 游戏对象 GameObject是unity所有实体的基类 gameObject 获取当前脚本所挂载的游戏对象 一般来说,在属性视图中能看到或修改的属性,我们同样可以在脚本中获取并 ...

  6. [转] Draw Call未被批处理?告诉你在Unity 5.6中如何查找原因 [复制链接]

    Unity在5.6之前的版本中并未提供很直接的方式来查找Draw Call未被批处理的原因,但Unity 5.6在Frame Debugger中新增了一项功能,帮助开发者查找相关信息.今天这篇文章就为 ...

  7. U3D操作游戏对象

    游戏对象:所有出现在场景中的实体都是游戏对象. 一.创建游戏对象 创建游戏对象有两种方式:一是通过在unity中创建模型,而是通过脚本动态创建游戏对象.通过脚本动态创建的灵活性较高,重点也在于通过脚本 ...

  8. Unity3d 如何找到游戏对象并改变其颜色

    //游戏对象 private var obj:GameObject; //渲染器 private var render:Renderer; //贴图 private var texture:Textu ...

  9. Unity关于获取游戏对象

    我觉得Unity里面的Transform 和 GameObject就像两个双胞胎兄弟一样,这俩哥们很要好,我能直接找到你,你也能直接找到我.我看很多人喜欢在类里面去保存GameObject对象.解决G ...

随机推荐

  1. map集合的应用

    分析以下需求,并用代码实现: (1)利用键盘录入,输入一个字符串 (2)统计该字符串中各个字符的数量例如 用户输入字符串"If~you-want~to~change-your_fate_I_ ...

  2. java全栈day34---表单CSS

    今日内容介绍 1 使用html的表单标签编写“注册页面” 2 使用DIV和CSS重写网站首页 所有的html标签中,表单标签是最重要的.在实际开发中,最经典的实例就是用户注册,覆盖 了表单标签的所有的 ...

  3. Bootstrap 的 Dropdown

    一.简介 Dropdown 就是下拉列表,这里 有一个例子. Dropdown 的完整代码如下: <div id="dropdownWrapper"> <butt ...

  4. 有三个线程,a、b、c,a打印“T1”,b打印“T2”,c打印“T3”,a执行完后,b执行;b执行完后,c执行。如此循环100遍

    有三个线程,a.b.c,a打印“T1”,b打印“T2”,c打印“T3”,a执行完后,b执行:b执行完后,c执行.如此循环100遍. package com.company; /** * 测试三个线程协 ...

  5. 【monkey测试】Fragment not attached to Activity

    monkey测试跑出了一个异常: // CRASH: packgeName (pid) // Short Msg: java.lang.IllegalStateException // Long Ms ...

  6. android studio 程序员有福了—从layout自动生成viewholder类

    狂点这里下载 超级牛逼的插件啊,比那些使用SparseArray的强太多了! 在android studio 1.0上测试,没有问题. 不说了直接说功能 Android Toolbox Plugin ...

  7. 【Python】python对象与json相互转换

    转自:http://blog.csdn.net/leilba/article/details/50654256 # -*- coding: UTF-8 -*- import json #自定义类 cl ...

  8. ORACLE 中dbms_stats的使用

    dbms_stats能良好地估计统计数据(尤其是针对较大的分区表),并能获得更好的统计结果,最终制定出速度更快的SQL执行计划. exec dbms_stats.gather_schema_stats ...

  9. Fxx and game hdu 5945 单调队列dp

    dfs你怕是要爆炸 考虑dp; 很容易想到 dp[ i ] 表示到 i 时的最少转移步数: 那么: dp[ i ]= min( dp[ i ],dp[ i-j ]+1 ); 其中 i-t<=j& ...

  10. [USACO10OCT]湖计数Lake Counting 联通块

    题目描述 Due to recent rains, water has pooled in various places in Farmer John's field, which is repres ...