UE5蓝图中播放背景音乐和使用代码播放声音

UE5蓝图中播放背景音乐

1.创建背景音乐Cube

2.勾选looping 循环播放背景音乐

3.在关卡蓝图中
Event BeginPlay-PlaySound2D
Sound选择自己创建的Bgm_Cube

蓝图播放声音方法二:

使用代码播放声音方法一

.h文件中

头文件引用

cpp 复制代码
#include "Kismet/GameplayStatics.h"

头文件声音定义声明

cpp 复制代码
private:
	
	USoundBase* Sound;

.cpp文件中

写在Sets default values中的代码

不写在BeginPlay()中最好,在BeginPlay()中不报错能运行,但是打包之后测试会没有声音

cpp 复制代码
Sound = LoadObject<USoundBase>(NULL, TEXT("'/Game/SnakeAudio/EatFood.EatFood'"));//加载引用虚幻编辑器中的音频,加单引号,不加_C

写在需要播放声音的函数方法中

cpp 复制代码
if (Sound) //避免空指针
{
	UGameplayStatics::PlaySound2D(this, Sound);//播放声音
}

使用代码播放声音方法二

.h文件中

头文件引用

cpp 复制代码
#include "Kismet/GameplayStatics.h"

头文件声音定义声明

cpp 复制代码
private:
	USoundWave* GameOverAudio;
    USoundWave* FoodAudio;

.cpp文件中

写在Sets default values中的代码

不写在BeginPlay()中最好,在BeginPlay()中不报错能运行,但是打包之后测试会没有声音

cpp 复制代码
//加载引用虚幻编辑器中的音频,加单引号,不加_C
auto food = StaticLoadObject(UObject::StaticClass(), nullptr, TEXT("'/Game/SnakeAudio/EatFood.EatFood'"));
auto hit = StaticLoadObject(UObject::StaticClass(), nullptr, TEXT("'/Game/SnakeAudio/Hit.Hit'"));
GameOverAudio = Cast<USoundWave>(hit);
FoodAudio = Cast<USoundWave>(food);

写在需要播放声音的函数方法中

cpp 复制代码
	UGameplayStatics::PlaySound2D(GetWorld(), GameOverAudio, 1.0f);
	UGameplayStatics::PlaySound2D(GetWorld(), FoodAudio, 1.0f);
相关推荐
谢娘蓝桥21 小时前
adi sharc c/C++ 语言指令优化
开发语言·c++
郑泰科技21 小时前
fmm(快速地图匹配)实践:Unknown toolset: vcunk的解决方案
c++·windows·交通物流
zhangzhangkeji21 小时前
UE5 C++(5):虚幻C++游戏架构,创建C++默认类,以及如何自定义游戏模式
ue5
一只一只21 小时前
Unity之Invoke
unity·游戏引擎·invoke
a35354138221 小时前
设计模式-原型模式
开发语言·c++
liulilittle1 天前
libxdp: No bpffs found at /sys/fs/bpf
linux·运维·服务器·开发语言·c++
星火开发设计1 天前
堆排序原理与C++实现详解
java·数据结构·c++·学习·算法·排序算法
福楠1 天前
C++ STL | list
c语言·开发语言·数据结构·c++·算法·list
myloveasuka1 天前
int类型的取值范围(为什么负数比正数表示的范围多一位)
c语言·c++
玉树临风ives1 天前
atcoder ABC439 题解
c++·算法