淡入淡出GUI.Box
本文关键字:Box GUI 淡出 淡入 | 更新日期: 2023-09-27 18:18:09
如何淡入和淡出GUI.Box?我试着搜索,但只能找到如何淡出文本。
void OnGUI()
{
GUI.Box(new Rect(20, 20, 300, 100), "Find pH of paper");
}
由于Unity的新GUI系统,不建议使用OnGUI功能。
无论如何,GUI类提供了一个静态属性GUI. backgroundcolor简单地设置颜色随时间的值。但是,我不知道alpha是否会被OnGUI函数考虑在内。
下面是一个这样做的例子:
private void Update()
{
GUI.backgroundColor = Color.Lerp(Color.white, Color.clear, Mathf.PingPong(Time.time, 1));
}
如果你想在用户做一个动作时开始淡出,你也可以使用协程。
private IEnumerator FadeIn( float duration = 1 )
{
for( float t = 0 ; t < duration ; t += Time.deltaTime )
{
GUI.backgroundColor = Color.Lerp(Color.clear, Color.white, t / duration);
yield return null ;
}
}
使用UGUI系统更容易、更干净、更快。改变精灵的颜色,或者画布组的alpha值都是小菜一碟!