Unity中实现按钮点击改变物体颜色

发布时间 2023-07-12 02:24:11作者: SimoonJia

 

1. 创建一个按钮:在Unity中,可以通过在Hierarchy面板上右键点击,并选择UI -> Button来创建一个按钮。

2. 创建一个脚本:在Project面板中,右键点击并选择Create -> C# Script来创建一个脚本,并将其命名为ButtonController(或者其他你喜欢的名称)。

3. 将脚本添加到按钮上:将ButtonController脚本拖拽到刚刚创建的按钮对象上,将脚本关联到按钮上。

4. ButtonController脚本中编写代码:打开ButtonController脚本,并在其中添加以下代码:

 


using UnityEngine;
using UnityEngine.UI;

public class ButtonController : MonoBehaviour
{
    public GameObject targetObject; // 需要改变颜色的物体
    private Color originalColor; // 原始颜色

    private void Start()
    {
        originalColor = targetObject.GetComponent<Renderer>().material.color;
    }

    public void ChangeColor()
    {
        Color newColor = new Color(Random.value, Random.value, Random.value); // 随机生成一个新的颜色
        targetObject.GetComponent<Renderer>().material.color = newColor; // 改变物体颜色
    }

    public void ResetColor()
    {
        targetObject.GetComponent<Renderer>().material.color = originalColor; // 恢复原始颜色
    }
}

5. 将目标物体添加到脚本中:在Unity编辑器中,将需要改变颜色的物体拖拽到ButtonController脚本中的targetObject字段上。

6. 在按钮上添加响应函数:选中按钮对象,在Inspector面板中找到Button组件,在On Click()事件中点击“+”按钮,将ButtonController脚本的目标物体拖拽到Object字段上,然后选择ButtonController脚本的ChangeColor函数。

7. 运行游戏:点击Play按钮运行游戏,当点击按钮时,目标物体的颜色将会发生改变。

 

这样,你就可以通过点击按钮来改变物体的颜色了。