【Unity入门计划】GameObject类(1)-GetComponent方法
2023-09-11 14:22:30 时间
官方文档
Component-GetComponent - Unity 脚本 API
格式
GameObject.GetComponent<Type>()
其中:
GameObject——当前游戏对象的变量名称
Type——组件名称,类型是string
用途
GetComponent是获取当前游戏对象组件的方法,可以通过直接调用它来访问游戏对象的组件和进行参数调整。
使用举例
1 获取组件
假设我们知道场景中有一个"Ruby"玩家游戏对象,“Ruby”挂了一个Type为Rigidbody 2D的刚体组件,就可以通过GetComponent方法来获取Ruby的刚体组件。
- 首先,获取到的Rigidbody2D组件需要被赋予给另一个变量,这个变量需要有跟Rigidbody2D具有相同类型,因此需要先定义一个Rigidbody2D类型的对象
using UnityEngine;
public class RubyController : MonoBehaviour
{
//声明一个刚体对象
Rigidbody2D rigidbody2D;
}
- 下面就可以进行赋予了
using UnityEngine;
public class RubyController : MonoBehaviour
{
//声明一个刚体对象
Rigidbody2D rigidbody2D;
private void start(){
//游戏运行前,获取当前游戏对象的刚体组件
rigidbody2D = GetComponent<Rigidbody2D>();
}
}
2 定义组件属性
除了获取组件,还可以通过GetComponet来定义组件属性的值,比如:
//定义Mass为5
GetComponent<Rigidbody2D>.mass = 5;
直接使用GetComponent()以提高性能
根据官方文档所述,可以将
rigidbody2D = GetComponent<Rigidbody2D>();
换成
rigidbody2D = GetComponent("Rigidbody2D");
以提高性能。
相关文章
- KAFA 监测| Kafka监测的方法和工具
- PHP Primary script unknown 终极解决方法
- stylus入门使用方法
- mysql 清除relay-log文件方法详解
- (数据挖掘-入门-2)相似度衡量的方法
- stylus入门使用方法
- golang入门:for...range修改切片中元素的值的另类方法
- 预示敏捷方法走偏的15个标志——第2部分
- Atitit 开发效率补充哦哦那个、、 目录 1. 架构方法上选择快速开发的架构1 2. 编程方法上选择快速的编程范式和编程方法1 3. 开发方法论上需要快速的方法2 1.架构方法上选择快速
- Atitit 代码的导航 1.1.代码的层次导航 语句 函数方法 类 包 1.2.4.4. 代码可视化 流程图 一个方法内,多个代码行的关系图 语句to方法2 1.3.4.5. 类图 类结构
- Atitit. 软件设计 模式 变量 方法 命名最佳实践 vp820 attilax总结命名表大全
- iOS:runtime 消息转发 Method_Swizzling 动态添加方法 动态方法解析
- Android Studio怎么快速生成set方法和get方法
- Python从入门到成神必须知道的找包方法
- Py之rgf_python:rgf_python的简介、安装、使用方法之详细攻略
- TF学习——TF之Tensorboard:Tensorflow之Tensorboard可视化简介、入门、使用方法之详细攻略
- Windows PowerShell:Windows PowerShell的简介、入门、使用方法之详细攻略
- 深度学习的优化方法
- 【Groovy】MOP 元对象协议与元编程 ( 方法合成 | 动态注入方法 )
- 013-centos7 常用命令--查看当前用户的4种方法
- 【UVM入门 ===> Episode_1 】~ 验证方法学的概述、UVM类库、工厂机制 、覆盖方法
- cidaemon.exe过程cpu入住率和关闭cidaemon.exe加工方法
- 一种编写回调函数的简单方法
- SpringBoot入门:SpringBoot注解的使用Controller注解的使用方法
- 【TensorFlow 入门】7、定义图变量的方法
- Java:Java的jar包之POI的简介、安装、使用方法(基于POI将Word、Excel、PPT转换为html)之详细攻略
- java入门 常见问题及解决方法0001:Editor dose not contain a main type
- 【.Net实用方法总结】 整理并总结System.IO中BufferedStream类及其方法介绍