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);
相关推荐
不可求~6 小时前
C++ std::string_view 不是字符串:从悬空引用到安全用法
java·开发语言·c++
小小龙学IT7 小时前
C++ 正则表达式完全指南:从 std::regex 实战到 RE2 引擎原理(NFA/DFA/回溯陷阱)
c++·正则表达式
码匠许师傅11 小时前
【C++ 面试真题】聊聊 C++ 的序列容器
java·c++·面试
C++ 老炮儿的技术栈11 小时前
Qt5.9.1 Windows 完整开发环境搭建流程
开发语言·c++·windows·qt·编辑器·代码化
欧特克_Glodon11 小时前
OpenCV计算机视觉开发入门与实践<十一>:矩阵的复制和矩形类Rect
c++·opencv·计算机视觉·矩阵
键盘会跳舞11 小时前
C++:std::tuple 源码级深度拆解——变参模板、SFINAE与模板元编程核心技巧
开发语言·c++·sfinae·变参模板
bkspiderx12 小时前
从零开始:VS Code搭建C/C++开发环境全指南(Windows/macOS/Linux)
c语言·c++·windows·vs code·c/c++开发环境
东华万里12 小时前
第40篇C++核心基础与工程实践:从底层逻辑到避坑指南
开发语言·c++·面试·大学生专区
luj_176812 小时前
元设计的诱惑与现实
c语言·开发语言·c++·经验分享·算法
小星星闪亮登场12 小时前
ST表--倍增思想
开发语言·数据结构·c++·算法·思维