gpt4 book ai didi

c# - 在 Unity 中设置游戏对象颜色时出现奇怪的行为

转载 作者:行者123 更新时间:2023-12-02 19:30:19 25 4
gpt4 key购买 nike

所以当我设置游戏对象的颜色时,我遇到了这种奇怪的行为。

using UnityEngine;

public class TestObject: MonoBehaviour
{
private Material screenMaterial;

private void Awake()
{
screenMaterial= transform.GetChild(0).GetComponent<SpriteRenderer>().material;
screenMaterial.SetColor("_Color", Color.yellow);
}
}

enter image description here

问题是颜色在 90% 的情况下正确设置为黄色,有时只是白色。我的意思是,我想到的唯一一件事就是为什么会发生这种情况脚本没有足够的时间获取 Material 组件然后设置其颜色?!

这是一个全新的 2D 项目,没有其他脚本。

知道为什么会发生这种情况吗?

这是项目文件。 Download 。统一制作2019.2.18f1

最佳答案

当在此游戏对象上调用 Awake 时,子对象可能尚未加载。我会尝试将 Awake() 更改为 Start(),看看问题是否仍然存在。

关于c# - 在 Unity 中设置游戏对象颜色时出现奇怪的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61923205/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com