Appearance
GameObject (JavaScript)
GameObject
Scripting Name:Insight.GameObject
实体管理的单位,每个 GameObject 都有自己的 Transform,以及 Parent 和 Children。
Properties
activeInHierarchy
type : boolean
(只读)判断自己及父 GameObject 是否活跃。
activeSelf
type : boolean
(只读)判断自己是否活跃。
frustumCulled
type : boolean
是否对该 GameObject 上的 Mesh 进行视锥体剔除,默认为 true。
layer
type : number
GameObject 所在层。
注意:用户在设置 layer 时,需要在 21-30 层填写;<=20 层是SDK内容使用占用。
name
type : string
GameObject 的名称。
transform
type :Insight.Transform
(只读)Transform 组件。
parent
type :Insight.GameObject
(只读)当前 GameObject 的父 GameObject。
children
type :Array[Insight.GameObject]
(只读)当前 GameObject 的子 GameObject 数组。
Methods
toString
javascript
public string toString();
将 gameObject 内容以一定格式转为 string 类型。
javascript
// sample
Insight.Debug.Log( this.gameobject.toString() );
getComponent
javascript
public Insight.Component getComponent(string typeName, number index = 0);
通过组件类型名称和序号获取组件。
Parameter
- typeName : string 组件类型名称
- index : number 组件序号,从 0 开始 **[备注]**typeName 包括:Animator,AudioSource,VideoPlayer,BoxCollider,SphereCollider,Light,Camera,Transform,CanvasRenderer,RawImage,Image,Text,Canvas,Button,ParticleSystem, HingeJoint,Rigidbody。以及 Renderer 和 SkinnedMeshRenderer 等同,均指向 SkinnedMeshRenderer 类型。
javascript
// sample
this.animatorComp = this.gameobject.getComponent("Animator", 0);
setActive
javascript
public void setActive(boolean isActive);
设置该 GameObject 的是否活跃。
Parameter
- isActive : boolean 是否活跃
javascript
// sample
this.gameobject.setActive(false);
Static Methods
InstantiateFromFile
javascript
public static Insight.GameObject InstantiateFromFile(string sceneFile);
从本地磁盘文件中读取一个场景,挂在场景根结点下面。
一般用于动态加载场景。
Parameter
- sceneFile : string 场景文件相对路径(以 Assets 文件夹为根目录)
InstantiateFromFile
javascript
public static Insight.GameObject InstantiateFromFile(string sceneFile, Insight.Transform parent);
从本地磁盘文件中读取一个场景,挂在指定父结点下面。
一般用于动态加载场景。
Parameter
- sceneFile : string 场景文件相对路径(以 Assets 文件夹为根目录)
- parent : Insight.Transform 父结点的 transform
javascript
// sample
this.root = Insight.GameObject.Find("Root").transform;
var path = "Assets/Res/_Scenes/newScene.res";
var child = Insight.GameObject.InstantiateFromFile( path, this.root );
Instantiate (仅 Unity 使用)
javascript
public static Insight.GameObject Instantiate(Insight.GameObject game_object);
从 GameObject 中读取一个场景,挂在场景根结点下面。
一般用于动态加载场景。
Parameter
- game_object : Insight.GameObject 要加载的 GameObject
Instantiate (仅 Unity 使用)
javascript
public static Insight.GameObject Instantiate(Insight.GameObject game_object, Insight.Transform parent);
从 GameObject 中读取一个场景,挂在指定父结点下面。
一般用于动态加载场景。
Parameter
- game_object : Insight.GameObject 要加载的 GameObjec
- parent : Insight.Transform 父结点的 transform
Destroy
javascript
public static void Destroy(Insight.GameObject gameobject);
销毁一个 GameObject。
Parameter
- gameobject : string 要销毁的 GameObject
javascript
// sample
this.model = Insight.GameObject.Find("Model");
Insight.GameObject.Destroy(this.model);
Find
javascript
public static Insight.GameObject Find(string name);
根据名字查找 GameObject。
Parameter
- name : string GameObject 的名称
javascript
// sample
this.model = Insight.GameObject.Find("Model");