
在本文中,将在Unity中制作一个可以改变音量和亮度的游戏菜单,只有当用户按下退出键并暂停游戏时才能访问此菜单。
因此为了判断游戏是否真的暂停了,需要一些基本的运动,在这种情况下,一些球体将会下落。为此,需要一个名为暂停菜单的脚本。
脚本如下:
void Update()
{
if (Input.GetKeyDown( KeyCode.Escape )&&_paused==false)
{
Time.timeScale = Of;
_paused = true;
_pausecanvas.gameObject.SetActive(true);
}
else if (Input.GetKeyDown(KeyCode.Escape)&&_paused==true)
{
Time.timeScale = 1;
_pausecanvas.gameObject. SetActive(false);
_paused = false;
}
}
在更新中,检查是否按下了退出键,如果按下了,通过将时间刻度归零并激活包含暂停菜单的游戏对象来暂停游戏。
这里要制作一个下落的球体,需要一个可以在开始时调用的协程。
代码如下:
IEnumerator DropBall()
{
while(_dropBall)
{
GameObject ball = Instantiate(_ball,_spawnPoint.transform.position,_spawnPoint.transform.rotation);
yield return new waitForSeconds(1);
Destroy(ball,1);
}
}

接下来要调整滑块上的音量,这里不需要创建公共方法,因为可以从保存音频源的空游戏对象中调用它。
在这个滑块上,可以抓住音频源的音量并进行更改。

对于需要创建图像的亮度,将其颜色设置为黑色并关闭光线投射目标,这样它就不会干扰用户点击滑块啦。

然后需要创建一个可以从亮度滑块调用的公共方法,这将使能够控制图像的透明度,透明度越高,颜色越深。
public void BrightnessAdjustment()
{
var tempcolor = _image.color;
tempColor.a = _slider.value;
_image.color = tempcolor;
}
到这里就可以测试一下该游戏了,测试结果如下。

…
以上是关于制作设置菜单的全部内容,如果你有任何反馈,请随时在本页面下方留言。