UnityAPI学习之 播放游戏音频的类(AudioSource)

播放游戏音频的类(AudioSource)

cs 复制代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class NO17AudioSource : MonoBehaviour
{
    private AudioSource audioSource;//音频组件
    public AudioClip clip;//音频文件
    public AudioClip clip2;
    bool mutestate;
    bool pausestate;
    // Start is called before the first frame update
    void Start()
    {
        audioSource = GetComponent<AudioSource>();
        audioSource.clip = clip;
        audioSource.Play();
        //设置音乐的播放开始的时间轴位置
        audioSource.time = 3;
    }

    // Update is called once per frame
    void Update()
    {
        //实现按下W键静音,再次按下恢复音量
        if (Input.GetKeyDown(KeyCode.W))
        {
            mutestate = !mutestate;
            audioSource.mute = mutestate;
        }
        if (Input.GetKeyDown(KeyCode.P))
        {
            pausestate = !pausestate;
            //暂停播放
            if (pausestate)
            {
                audioSource.Pause();
            }
            else
            {
                //继续播放
                audioSource.UnPause();
            }
        }
        //停止播放
        if (Input.GetKeyDown(KeyCode.S))
        {
            audioSource.Stop();
        }
        //播放一次
        if (Input.GetKeyDown(KeyCode.K))
        {
            audioSource.PlayOneShot(clip2);
        }
        //静态方法
        //在指定位置创建音频
        if (Input.GetKeyDown(KeyCode.Q))
        {
            AudioSource.PlayClipAtPoint(clip2,transform.position);
        }
    }
}

注:

  1. audioSource.Stop()这个函数一旦执行就停止音频播放,想要重新播放音频就只有执行audioSource.Play()这条命令

  2. 使用音频文件的前提是,要在相应的组件上装AudioListener组件

相关推荐
好奇龙猫1 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
saoys2 小时前
Opencv 学习笔记:图像掩膜操作(精准提取指定区域像素)
笔记·opencv·学习
玩泥巴的2 小时前
飞书 .NET SDK 事件处理的幂等性与去重机制
c#·.net·二次开发·飞书
在路上看风景2 小时前
3.2 FileStream
c#
zwm2698888152 小时前
6号楼 部分声光24v电压达不到,显示11v
c#
电子小白1233 小时前
第13期PCB layout工程师初级培训-1-EDA软件的通用设置
笔记·嵌入式硬件·学习·pcb·layout
唯情于酒3 小时前
Docker学习
学习·docker·容器
charlie1145141914 小时前
嵌入式现代C++教程: 构造函数优化:初始化列表 vs 成员赋值
开发语言·c++·笔记·学习·嵌入式·现代c++
IT=>小脑虎5 小时前
C++零基础衔接进阶知识点【详解版】
开发语言·c++·学习
#眼镜&5 小时前
嵌入式学习之路2
学习