unity获取脚本组件_GameObject.GetComponent 获取组件

本文介绍了Unity中获取游戏对象组件的关键方法GetComponent,包括如何通过Type和字符串来访问内置组件或脚本组件。示例代码展示了在Start和Update函数中如何使用GetComponent来获取并操作Transform和自定义脚本组件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

GameObject.GetComponent 获取组件

function GetComponent (type : Type) : Component

Description描述

Returns the component of Type type if the game object has one attached, null if it doesn't. You can access both builtin components or scripts with this function.

如果这个游戏物体包含一个类型为type的组件,则返回它。如果没有则为空。通过这个函数,你可以访问内建的组件或者脚本的组件。

GetComponent is the primary way of accessing other components. From javascript the type of a script is always the name of the script as seen in the project view.

GetComponent是访问别的组件的原始方法,对javascript来说,脚本的类型就是项目视图里面看到的脚本名称。

using UnityEngine;

using System.Collections;

public class example : MonoBehaviour {

void Start() {

Transform curTransform;

curTransform = gameObject.GetComponent();

curTransform = gameObject.transform;

}

void Update() {

ScriptName other = gameObject.GetComponent();

other.DoSomething();

other.someVariable = 5;

}

}

function Start () {

var curTransform : Transform;

curTransform = gameObject.GetComponent(Transform);

// 这里等同于:

curTransform = gameObject.transform;

}

function Update () {

// 为了访问附属于这个游戏物体的别的脚本里共有的变量很函数

// (脚本名称是javascript文件的名称)

var other : ScriptName = gameObject.GetComponent(ScriptName);

// 调用这个脚本上的一个DoSomething函数

other.DoSomething ();

// 设置别的脚本实例上的另外一个变量

other.someVariable = 5;

}

o function GetComponent (type : string) : Component

Description描述

Returns the component with name type if the game object has one attached, null if it doesn't.

如果游戏物体有一个附加组件,则返回名为type的组件,如果没有则为空。

It is better to use GetComponent with a Type instead of a string for performance reasons. Sometimes you might not be able to get to the type however, for example when trying to access a C# script from Javascript. In that case you can simply access the component by name instead of type. Example:

由于性能原因,最好使用Type的GetComponent,而不是用字符串。不过有时你可能无法得到Type,例如当你从Javascript访问C#脚本时,这个时候你可以简单通过名字而不是type来访问组件。例如:

using UnityEngine;

using System.Collections;

public class example : MonoBehaviour {

void Update() {

ScriptName other;

other = gameObject.GetComponent("ScriptName") as ScriptName;

other.DoSomething();

other.someVariable = 5;

}

}

function Update () {

// To access public variables and functions

// in another script attached to the same game object.

// (ScriptName is the name of the javascript file)

//在另一个脚本附加相同的游戏物体,访问公共变量和函数

//(ScriptName是javascript的文件名)

var other : ScriptName;

other = gameObject.GetComponent("ScriptName");

// Call the function DoSomething on the script

//调用函数做一些事情

other.DoSomething ();

// set another variable in the other script instance

//设置在other脚本实例的另一个变量

other.someVariable = 5;

}

Page last updated: 2010-12-13

top.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值