Unity中的声音(声音开关+动画事件播放声音+控制声音大小UI)

这篇具有很好参考价值的文章主要介绍了Unity中的声音(声音开关+动画事件播放声音+控制声音大小UI)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


        声音组件(一个scene中只能有一个Audio Listener,位于Camera)
        Audio Source 理解为 “嘴巴”
Unity中支持的音频格式
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎

声音开关

效果:点击背景音乐暂停,再点击音乐继续。
步骤
(1)创建UI—Toggle(切换)
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
与图片上对应:
      Label 文字
      Background 白色框框
      Checkmark 黑色的勾
(可以根据自己的UI样式调整Background和Checkmark的Sprite,实现自己的效果)
比如我自己使用:
Background
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
Checkmark
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
这样可以实现(颜色不会变哦,图片是录屏的原因)
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(2)在Toggle组件上添加Audio Source组件,在Audio Clip中拖入要加的音乐片段,其他属性开自己要求。
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(3)创建一个空对象,命名为music,创建一个脚本,命名MusicToggle挂载上面
代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class MusicToggle : MonoBehaviour
{
    public  Toggle toggelMusic;
    public AudioSource audio;

    public void ToggleMusicThing()
    {
        if (toggelMusic.isOn == true)
        {
            audio.mute =false;
        }
        else if (toggelMusic.isOn == false)
        {
            audio.mute=true;
        }
    }
}

将Toggle拖到脚本中,两个都是,因为Audio Source组件也在Toggle里面
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(4)回到Toggle中
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
先点击“+”号,将music拖到Runtime下方的框中
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
然后点击Runtime右边的框,找到函数
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
这样就可以了。

动画事件播放声音

比较适合在Unity中制作动画时使用
(1)先制作好动画,在挂载动画的物体上挂载组件Audio Source。
注意:不要勾选“在唤醒时播放”
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(2)创建一个脚本,挂载到该物体上
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class PlayWater : MonoBehaviour
{
    public void Playwater()
    {
       // Debug.Log("okkkkkkkk");
        AudioSource audio = GetComponent<AudioSource>();
        audio.Play();
    }
}

(3)打开动画片段,选择动画上要添加事件的帧数
点击“添加事件”
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(3)点击刚添加的事件,在“检查器”窗口点击如下图,选择上面写的函数
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
这样就实现了在动画事件播放声音。

控制声音大小Slider

(1)创建一个空物体命名gameVoice,加上AudioSource组件,将声音Clip拖进去,打开Play On Wake和Loop,将Volume设置为1。
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(2)创建一个Slider,命名为voiceSlider,将属性value设置为1
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(3)创建一个脚本BackMusicControl,将脚本挂到gameVoice。
代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class BackMusicControl : MonoBehaviour
{
    public Slider slider;
    public AudioSource backMusic;

    public void ControlMusic()
    {
        backMusic.volume = slider.value;
    }
}

将voiceSlider和gameVoice挂到上面
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
(4)在voiceSlider中点击添加事件,将gameVoice弱到坐下放格子,在右边格子点击,找到刚才写的脚本和其中的函数。
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎
unity声音,Unity3D游戏制作基础知识,unity,ui,游戏引擎

如有问题,欢迎留言 ヽ(✿゚▽゚)ノ文章来源地址https://www.toymoban.com/news/detail-695257.html

到了这里,关于Unity中的声音(声音开关+动画事件播放声音+控制声音大小UI)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity中,点击按钮Button,控制,动画Animator暂停播放

    在Unity中,你可以使用以下脚本来实现点击按钮时停止动画的功能: using UnityEngine; using UnityEngine.UI; public class StopAnimationOnClick : MonoBehaviour {     public Animator animator;     public Button button;     private bool isAnimationPlaying = true;     private void Start()     {         button.onClick.AddListen

    2024年04月27日
    浏览(33)
  • Unity简单操作:设置触发条件 切换Animator动画控制器 里面播放的Animation动画

    确保animator里面有多个animation动画剪辑,点击Animator里面[Parameters]添加触发条件   添加连线箭头并且 给箭头连线绑定触发事件  添加连线箭头并且 给箭头连线绑定触发事件  

    2024年02月04日
    浏览(47)
  • 【Unity3D小技巧】Unity3D中Animation和Animator动画的播放、暂停、倒放控制

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 大家好,我是佛系工程师 ☆恬静的小魔龙☆ ,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 在日常开发中,常常会遇到要控制动画的播放、暂停和倒放的情况。 这篇文章就总结一下, Animation

    2024年02月02日
    浏览(74)
  • Unity3d C#利用本地网页快速打开萤石云监控视频流(ezopen)实现云台,声音等控制,支持WebGL平台,替代UMP播放(含源码)

    之前我介绍了替代Universal?Media?PlayerUMP播放石云监控视频流(ezopen)的功能,效果还是很明显的,笔者的测试是差不多3-5秒就能打开监控画面,不过稍微遗憾的是,之前的功能是iframe打开石云提供的播放网页的形式,功能基本只有画质切换,声音开关等;具体可以移步查看(https

    2024年02月13日
    浏览(37)
  • Unity技术分享】帧动画,开关门,光幕

    让我们先来看看第一个要实现的效果。 这是一个钥匙卡的模型加动画加特效。 那么这个效果是如何实现的呢? 我来给大家拆分下。 首先在整个模型上添加一个球形碰撞体SphereColloder,用于人物触碰到的时候做捡取操作。 获取人物身上的背包管理脚本 当该碰撞体(钥匙卡)

    2024年02月20日
    浏览(29)
  • 【unity安卓】Unity2021导出安卓项目视频无法播放(黑屏、只有声音)

    感谢陈老师解决这个问题! 使用videoplay播放视频导出安卓项目后视频无法播放 1.加入这几个shader 整体所需shader 2.改视频设置 codec 改vp8 transcode勾选 3.修改项目申请读取手机读写权限(非必须)

    2024年02月12日
    浏览(33)
  • Unity 之利用Audio Source(音频源)组件用于播放声音

    Unity中的Audio Source(音频源)是一个用于播放声音的组件,通常附加到游戏对象上,以便在游戏中播放音频效果、音乐或对话。以下是Audio Source的详细介绍: 添加Audio Source : 要在Unity中使用Audio Source,首先需要将其附加到一个游戏对象上。通常,您可以选择场景中的一个空游

    2024年02月09日
    浏览(33)
  • 【Unity学习】Unity GetCurrentAnimatorStateInfo方法判断动画播放

    #好记忆不如烂笔头# 通过normalizedTime的来判断动画播放是否完成。这里是一个爆炸动画,爆炸结束后,动画消失。配合一个对象池管理器使用。

    2024年02月11日
    浏览(35)
  • 【Unity动画】动画混合树(BlendTree)无缝过渡+两个动作同时播放

    混合树的级别和一个动画片段一样,只不过混合树里面包含了多个动作。 双击Blend Tree 进去混合树的编辑界面  这里面可以添加很多个动作,然后选定一个之前设置好的任意一个参数作为控制变量。 这个参数只能选用Float类型!我前面就定义了一个float类型的变量,叫run。因

    2024年02月03日
    浏览(36)
  • unity中legacy动画用animation播放【播放,正播,倒播,重播】

    目前unity中有两种动画,一种是legacy动画,用Animation播放, 另一种是Mecanim,用Anamator播放。 本文只讨论legacy动画的播放,不涉及其它动画,也不涉及legacy动画的制作。 确保物体上已经挂了动画,一般只有一个动画片段。检查是否能播放:勾选自动播放,点击运行进行测试。

    2024年02月06日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包