cesium鼠标左键获取经纬度_Unity编码篇 获取组件,显示隐藏和销毁

我们想要访问游戏物体的组件 , 首先要找到这个游戏物体 , 然后才能找到这个物体身上的某个组件去改变它. 我们使用 GetComponent 方法获取组件 :

using UnityEngine;

public class Test : MonoBehaviour

{

// 定义一个cube对象

private Transform m_Cube;

private void Start()

{

// 获取这个cube身上的 Transform 组件

m_Cube = GameObject.Find("Cube").GetComponent();

}

private void Update()

{

// cube 绕着y轴旋转

m_Cube.Rotate(Vector3.up * Time.deltaTime * 30f);

// 如果按下鼠标左键

if (Input.GetMouseButtonDown(0))

{

// cube 的颜色变蓝

m_Cube.GetComponent().material.color = Color.cyan;

}

// 如果按下鼠标右键

if (Input.GetMouseButtonDown(1))

{

// cube变大一倍

m_Cube.localScale = Vector3.one * 2f;

}

// 如果按下鼠标中键

if (Input.GetMouseButtonDown(2))

{

// 将cube隐藏

m_Cube.gameObject.SetActive(false);

}

// 如果按下键盘 D 键

if (Input.GetKeyDown(KeyCode.D))

{

// 3s 后销毁这个 cube (这里的gameObject指的就是这个cube本身)

Destroy(gameObject, 3f);

}

}

}

代码已写好注释 , 可以对比注释看

我们在unity新建一个cube , 给这个cube挂上上面的脚本 , 然后运行 unity

运行效果 :

cube运行状态下一直在绕Y轴旋转 ;

按下鼠标左键 cube变蓝 ;

按下鼠标右键 cube变大1倍 ;

这里我们先在 Start 方法里获取了这个cube的 Transform 组件 , 而 Transform 组件是场景里每个游戏对象都有的组件 , 它控制物体的 位置 ,旋转,大小

我们获取到了cube身上的 Tranform 组件 , 我们就可以改变这个cube的位置,大小,旋转等属性 .

025e5093c9cf420788e14d2021fa48df

请输入图片描述

Transform组件

同理 ,我们也可以获取cube的 Box Collider 组件 , 将cube的 Is Trigger 勾选上 , 这个留给大家做练习 , 如果不会的可以留言 , 我在为大家写一下 .

现在为大家介绍设置游戏物体的显示和隐藏 SetActive() :

SetActive方法里面需要传一个 bool 值 :

true : 表示显示物体 ;

false : 表示隐藏物体 ;

运行效果 :

当我们按下鼠标中键的话 , cube会消失 ;

最后为大家介绍 Destroy 方法 :

销毁游戏对象及其组件 , 当我们不需要这个游戏物体了 , 我们就需要将这个物体销毁 .

格式 :

Destroy(GameObject) : 销毁某个物体(要销毁的游戏对象).

Destroy(GameObject , time) : 延迟一段时间后 , 销毁这个物体 (第一个参数是要销毁的游戏对象 , 第二个参数是延迟的时间).

运行效果 :

当按下键盘 D 键的时候 , 3s后 cube被销毁 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值