Unity常用音频操作类
using UnityEngine; using System.Collections; public class AudioPlay : MonoBehaviour { public static AudioPlay Instance; public AudioClip[] FuChuAudio; public AudioSource FCAudio; // public AudioSource BabyAudio; // Use this for initialization void Awake() { Instance = this; } void Start () { } // Update is called once per frame void Update () { } /// <summary> /// 播放某个音频 /// </summary> /// <param name="i"></param> public void playAudio(int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.Play(); } /// <summary> /// 停止播放所有的音频 /// </summary> public void StopplayAll() { for (int i= 0; i< FuChuAudio.Length; i++) { FCAudio.clip = FuChuAudio[i]; FCAudio.Stop(); } } /// <summary> /// 停止播放某个音频 /// </summary> /// <param name="i"></param> public void StopplayOne(int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.Stop(); } /// <summary> /// 循环播放某个音频 /// </summary> /// <param name="i"></param> public void playLoop(int i) { FCAudio.clip = FuChuAudio[i]; FCAudio.loop = true;//设置声音为循环播放 ; FCAudio.Play(); } } ———————————————— 版权声明:本文为CSDN博主「记录成长分享」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/lrh15980692010/article/details/76570423
/**
*将这个脚本挂载到一个空物体上,并且给它添加 AudioSource 组件
*/
using System.Collections; using System.Collections.Generic; using UnityEngine; /// <summary> /// 控制所有音乐的管理类 /// </summary> public class AudioManager : MonoBehaviour { //将要轮流播放的音乐组 public AudioClip[] audioGroup; //当前播放的是谁 private int playingIndex; //是否允许播放音乐 private bool canPlayAudio; //AudioSource组件 private AudioSource audioSource; //----------------------------------------------------- void Start() { audioSource = this.GetComponent<AudioSource>(); canPlayAudio = true; playingIndex = 0; } //----------------------------------------------------- void Update() { if (canPlayAudio) { PlayAudio(); canPlayAudio = false; } if (!audioSource.isPlaying) { playingIndex++; if (playingIndex >= audioGroup.Length) { playingIndex = 0; } canPlayAudio = true; } } //----------------------------------------------------- private void PlayAudio() { audioSource.clip = audioGroup[playingIndex]; audioSource.Play(); } //----------------------------------------------------- } ———————————————— 版权声明:本文为CSDN博主「哟呵呵和」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/m0_37250299/article/details/79072361
本文来自博客园,作者:꧁执笔小白꧂,转载请注明原文链接:https://www.cnblogs.com/qq2806933146xiaobai/p/15038743.html
分类:
游戏开发-Unity
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下