Unity使用滚动条Slider控制声音音量

在unity如何利用Slider控制声音的音量呢?

其实原理很简单:我们知道声音的组件【AudioSource】身上的属性“volume”是控制它的音量的,volume的值范围是0~1;而滚动条Slider组件的值Value滑动范围也是0到1,那么我们让volume的值由value控制就行了。

新建空物体命名为Sound。为其新建子物体命名为BGsound,将声音文件拖进去,初始设置非激活:
在这里插入图片描述
添加一个Slider和Toggle,slider的value设置为1:
在这里插入图片描述
新建脚本AudioControl:
在这里插入图片描述

挂载到sound对象上去:
在这里插入图片描述
设置slider:
因为滚动条滚动的时候要实时更新volume的值,所有要将volume方法添加给slider
在这里插入图片描述
同理,设置选择框控制音量的开关:
在这里插入图片描述
OK。运行测试:
点击选择框会停止或者播放背景声音,拖动滚动条可以调节音量大小
在这里插入图片描述
在这里插入图片描述

### 实现Unity中通过滑轨控件调整音量Unity项目里,为了使用户能够交互式地改变音频播放的响度,可以通过UI中的`Slider`组件来达成这一目标。具体操作涉及几个方面的工作。 #### 创建UI滑动条Unity编辑器内,在Hierarchy视窗下右键单击并选取UI > Slider选项以建立一个新的滑动条对象[^1]。依据界面布局的需求适当调整该滑动条的位置以及尺寸参数。 #### 配置音频源 在同一场景之中构建一个空白的游戏物件(GameObject),随后附加给它一个名为`AudioSource`的组件。接着把待控制音量水平的声音资源拖放到此`AudioSource`组件下的`AudioClip`字段上完成配置工作[^3]。 #### 编写逻辑脚本 针对上述准备好的元素,需进一步编写一段C#代码以便建立起两者间的联系机制: ```csharp using UnityEngine; using UnityEngine.UI; public class VolumeController : MonoBehaviour { public AudioSource audioSource; // 关联至实际使用的音频源实例 private void Start() { if (audioSource == null) Debug.LogError("未指定有效的AudioSource!"); } /// <summary> /// 更新当前音频源的音量值. /// </summary> /// <param name="volume">来自Slider的新音量数值</param> public void UpdateVolume(float volume) { audioSource.volume = volume; } } ``` 将这段脚本挂载到任意合适位置的对象之上,并确保正确设置了其中公开变量所指向的目标实体——即之前提到过的带有`AudioSource`的那个游戏体;另外还需注意让`Slider`上的事件监听函数绑定到这里定义的方法上来响应用户的输入动作[^2]。 当一切设定完毕之后,运行程序即可看到效果:随着玩家移动滑块指针的变化而实时反映出对应音频输出强度的不同状态。
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周周的Unity小屋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值