UnityEngine.Object

Variables 变量
name 物体的名字
hideFlags 物体是否被隐藏、保存在场景中或被用户修改?
Functions 函数
GetInstanceID 返回物体的实例ID
ToString 返回游戏物体的名称。
Static Functions 静态函数
Destroy 删除一个游戏物体、组件或资源
DestroyImmediate 立即销毁物体obj,强烈建议使用Destroy代替。
DontDestroyOnLoad 加载新场景的时候使目标物体不被自动销毁。
FindObjectOfType 返回Type类型第一个激活的加载的物体。
FindObjectsOfType 返回Type类型的所有激活的加载的物体列表
Instantiate 克隆原始物体,并返回克隆的物体
Operators 运算符
bool 对象是否存在
operator != 比较两个对象的引用是否不同
operator == 比较两个对象的引用是否相同。

GameObject, Component在游戏中的组成

GameObject, Component,UnityEngine.Object的关系

UnityEngine.Object常用方法

销毁

//销毁游戏物体
Destroy (gameObject);

//从游戏物体删除该脚本实例
Destroy (this);

//从游戏物体删除刚体
Destroy (rigidbody);

//加载物体5秒后销毁游戏物体
Destroy (gameObject, 5);

//当按下Ctrl将从游戏物体删除名为FooScript的脚本
void Update () {
    if (Input.GetButton ("Fire1") && GetComponent (FooScript))
    Destroy (GetComponent (FooScript));
}
//当加载新场景的时候,使游戏物体和它所有的transform子物体存活下来
function Awake () {
    DontDestroyOnLoad (transform.gameObject);
}

查找

FindObjectOfType 查找首个Type物体

返回Type类型第一个激活的加载的物体。

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
    void Start() {
        GUITexture s = FindObjectOfType(typeof(GUITexture));
        if (typeof(s))
            Debug.Log("GUITexture object found: " + s.name);
        else
            Debug.Log("No GUITexture object could be found");
    }
}

FindObjectsOfType 查找Type物体

返回Type类型的所有激活的加载的物体列表

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
    void OnMouseDown() {
        HingeJoint[] hinges = FindObjectsOfType(typeof(HingeJoint)) as HingeJoint[];
        foreach (HingeJoint hinge in hinges) {
            hinge.useSpring = false;
        }
    }
}

请注意这两个函数是非常慢的。不推荐在每帧使用这个函数,大多数情况下你可以使用单例模式代替。

results matching ""

    No results matching ""