• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Unity API——GameObject类

武飞扬头像
极客范儿
帮助1

GameObject类是Unity场景中所有实体的基类。一个GameObject对象通常由多个组件(component)组成,且至少含有一个Transform组件。介绍GameObject类的一些实例属性、构造方法、实例方法和静态方法,并在最后对GameObject和Component这两个类之间的关系及其设计的GetComponent相关方法的使用区别进行注解。

一、GameObject类实例属性

在GameObject类中,设计的实例属性有activeSelf和activeInHierarchy。由于这两个属性功能相似,因此将属性activeInHierarchy作为activeSelf属性的提示内容介绍,下面主要介绍activeSelf属性。

1、aspect属性:设置摄像机视口比例

(1)基本语法

public bool activeSelf { get; }

(2)功能说明

此属性用来返回GameObject对象的Active标识状态

学新通

cube1、cube2和cube3的Active状态分别为true、false和true。由于cube2的Actice为false,作为其子类cube3虽然没有被激活,但其activeSelf的返回值依然为true。

notes:注意此属性与属性activeInHierarchy的区别。activeInHierarchy属性的功能是返回GameObject实例在程序运行时的激活状态,它只有当GameObject实例的状态被激活时才会返回true。而且它会受其父类激活状态的影响,如果其父类至最顶层的对象中有一个对象未被激活,activeInHierarchy就会返回false。

(3)代码实现

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ActiveSelf_demo : MonoBehaviour
{
    public GameObject cube1, cube2, cube3;
    void Start()
    {
        //对Cube2设置为false,其他设置为true
        cube1.SetActive(true);
        cube2.SetActive(false);
        cube3.SetActive(true);

        Debug.Log("activeSelf:");
        //尽管cube2被设置为fasle,但其子类cube3的activeSelf返回值仍然为true
        Debug.Log("cube1.activeSelf:"   cube1.activeSelf);
        Debug.Log("cube2.activeSelf:"   cube2.activeSelf);
        Debug.Log("cube3.activeSelf:"   cube3.activeSelf);

        Debug.Log("-----------------------------------------------------------");
        Debug.Log("\nactiveInHierarchy:");
        //cube2和cube3的activeInHierarchy返回值都为false
        Debug.Log("cube1.activeInHierarchy:"   cube1.activeInHierarchy);
        Debug.Log("cube2.activeInHierarchy:"   cube2.activeInHierarchy);
        Debug.Log("cube3.activeInHierarchy:"   cube3.activeInHierarchy);
    }
}


学新通

首先声明了3个变量cube1,cube2和cube3分别指向实例工程中的3个GameObject对象cube1,cube2和cube3,这3个对象的层级关系如图所示。
学新通

然后分别设置cube1、cube2和cube3的Active为true、false和true。

最后分别打印出这3个对象的activeSelf属性值和activeIn Hierarchy属性值,结果如下。

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfkijee
系列文章
更多 icon
同类精品
更多 icon
继续加载