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);
相关推荐
long_run1 小时前
C++之auto 关键字
c++
疯狂的代M夫1 小时前
C++对象的内存布局
开发语言·c++
重启的码农2 小时前
llama.cpp 分布式推理介绍(4) RPC 服务器 (rpc_server)
c++·人工智能·神经网络
重启的码农2 小时前
llama.cpp 分布式推理介绍(3) 远程过程调用后端 (RPC Backend)
c++·人工智能·神经网络
敲上瘾3 小时前
Linux I/O 多路复用实战:Select/Poll 编程指南
linux·服务器·c语言·c++·select·tcp·poll
huangyuchi.3 小时前
【Linux系统】匿名管道以及进程池的简单实现
linux·运维·服务器·c++·管道·匿名管道·进程池简单实现
only-lucky3 小时前
C++中的 Eigen库使用
开发语言·c++
汤永红4 小时前
week3-[分支嵌套]方阵
c++·算法·信睡奥赛
Q741_1474 小时前
C++ 力扣 438.找到字符串中所有字母异位词 题解 优选算法 滑动窗口 每日一题
c++·算法·leetcode·双指针·滑动窗口
草莓熊Lotso4 小时前
【C语言强化训练16天】--从基础到进阶的蜕变之旅:Day8
c语言·开发语言·c++·刷题·强化训练