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组件

相关推荐
z落落30 分钟前
C# 泛型接口和泛型类+泛型约束
开发语言·c#
阿正的梦工坊1 小时前
【Rust】08-集合类型、字符串与迭代器入门
开发语言·rust·c#
FuckPatience1 小时前
C# 使用泛型协变将派生类类型替换为基类类型
开发语言·c#
小宋加油啊1 小时前
机械臂抓取物体 PVN3D算法调研学习
学习·算法·3d
guygg881 小时前
C# 生成中间带 Logo 头像的二维码
开发语言·c#
Java面试题总结2 小时前
C#12 中的 Using Alias
开发语言·windows·c#
加号32 小时前
【C#】 ASCII 码转字符串技术解析
开发语言·c#
Xzh04232 小时前
AI Agent 学习路线(Java 后端方向)
java·人工智能·学习
做cv的小昊2 小时前
计算机图形学:【Games101】学习笔记08——光线追踪(辐射度量学、渲染方程与全局光照、蒙特卡洛积分与路径追踪)
图像处理·笔记·学习·计算机视觉·游戏引擎·图形渲染·概率论
星恒随风2 小时前
C++ 类和对象入门(五):初始化列表、explicit 和 static 成员详解
开发语言·c++·笔记·学习·状态模式