Unity中GameObject中的常用方法

1、静态方法

(1)根据对象名(游戏物体)查找对象

cs 复制代码
        GameObject obj2 = GameObject.Find("Holens");
        if( obj2 != null )
        {
            print(obj2.name);
        }
        else
        {
            print("没有找到对应对象");
        }

(2)通过tag来查找对象

cs 复制代码
GameObject obj3 = GameObject.FindWithTag("Player");

(3)查找多个对象

cs 复制代码
GameObject[] objs = GameObject.FindGameObjectsWithTag("Player");
print("找到tag为Player对象的个数" + objs.Length);

!!!注意:这些方法都无法找到失活的对象!!!

(4)摧毁对象

cs 复制代码
        GameObject.Destroy(myObj2);
        //第二个参数 代表延迟几秒钟删除
        GameObject.Destroy(obj5, 5);
        //Destroy不仅可以删除对象 还可以删除脚本
        GameObject.Destroy(this);

如果类继承了Mono,那可以不写GameObject

2、成员方法

(1)为对象添加脚本

cs 复制代码
Lesson2 les2 = obj6.AddComponent<Lesson2>();

(2)标签比较

cs 复制代码
        if(this.gameObject.CompareTag("Player"))
        {
            print("对象的标签 是 Player");
        }

(3)设置激活失活

cs 复制代码
obj6.SetActive(false);
obj6.SetActive(true);
相关推荐
lrh30252 小时前
Custom SRP - Complex Maps
unity·srp·render pipeline
m0_497214156 小时前
unity中通过拖拽,自定义scroll view中子物体顺序
unity·游戏引擎
地狱为王9 小时前
在Unity中实现DTLN-AEC处理音频文件的功能
unity·aec·降噪
SmalBox15 小时前
【URP】Shader绘制棋盘格对比内置管线
unity·渲染
郝学胜-神的一滴1 天前
基于OpenGL封装摄像机类:视图矩阵与透视矩阵的实现
c++·qt·线性代数·矩阵·游戏引擎·图形渲染
EQ-雪梨蛋花汤2 天前
【Unity笔记】Unity 编辑器扩展:打造一个可切换 Config.assets 的顶部菜单插件
unity·编辑器·游戏引擎
SmalBox2 天前
【URP】UnityHLSL顶点片元语义详解
unity·渲染
在路上看风景2 天前
9. Mono项目与Unity的关系
unity
在路上看风景2 天前
1.12 Memory Profiler Package - Summary
unity
SmalBox2 天前
【URP】Unity Shader Tags
unity·渲染