国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

UE4筆記2 背景音樂的操作

2022-10-19 12:36 作者:芯無波瀾  | 我要投稿

在播放場景時,常常都會有播放背景音樂的需求,如果要播放背景音樂,可以使用UE4的UAudioComponent組件

在藍(lán)圖中使用:

新建一個HUD藍(lán)圖,命名為MyGameHUD_BP,將MyGameHUD_BP打開,添加組件-AudioComponent,給AudioComponent設(shè)置一個音樂,再添加一個

OnAudioFinished事件(用于播放完了過后重新播放),在里面添加邏輯:

設(shè)置定時器,給定時器分配5秒的事情,是否循環(huán)選擇false,時間到了過后調(diào)用Play方法,組件是剛剛創(chuàng)建的AudioComponent。

然后在BeginPlay事件中添加Play方法,組件是剛剛創(chuàng)建的AudioComponent

將HUD分配給當(dāng)前的GameMode,然后運(yùn)行,這個時候你就會發(fā)現(xiàn)背景音樂就成功響起來了。

在C++中使用:

新建一個HUD類,命名為MyGameHUD

新建一個GameModeBase類,命名為MyGameModeBase

在MyGameModeBase構(gòu)造函數(shù)中添加以下代碼:

HUDClass = MyGameHUD::StaticClass();

頭文件:

#include "Components/AudioComponent.h"

在HUD添加一個成員變量:

class UAudioComponent* BkSoundPlayer;

在HUD構(gòu)造函數(shù)中添加以下代碼:

static ConstructorHelpers::FObjectFinder<USoundCue> BKSoundCueObject(TEXT("SoundCue'/Game/Sounds/HallMenuBKSound.HallMenuBKSound'"));

BkSoundCue = BKSoundCueObject.Object;

BkSoundPlayer = CreateDefaultSubobject<UAudioComponent>(TEXT("BkSoundPlayer"));

BkSoundPlayer->SetupAttachment(RootComponent); //RootComponent是根組件,Actor都會有這個RootComponent可掛載

BkSoundPlayer->SetSound(BkSoundCue); //HallMenuBkSoundCue是一個音樂

BkSoundPlayer->OnAudioFinished.AddDynamic(this,? &MyGameHUD::OnHallMenuBkSoundFinished); //當(dāng)綁定一個播放結(jié)束后事件函數(shù)

游戲開始后播放音樂,那么在MyGameHUD的BeginPlay函數(shù)中添加以下代碼:

BkSoundPlayer->Play(); //播放音樂

事件回調(diào):

void MyGameHUD::OnHallMenuBkSoundFinished()

{

GetWorld()->GetTimerManager().SetTimer(BackgroundSoundTimerHandle, this,

&MyGameHUD::BackgroundSoundTimerHandleCallback, 5.0f, false); //設(shè)置定時器延時5秒,只運(yùn)行一次

}

void MyGameHUD::BackgroundSoundTimerHandleCallback()

{

BkSoundPlayer->Play(); //定時時間到了過后就播放音樂

}

以上就完成了背景音樂的播放

但是要注意的是,在BkSoundPlayer->OnAudioFinished.AddDynamic這句代碼添加的回調(diào)函數(shù)必須得是UFUNCTION,也就是在MyGameHUD類定義的頭文件中,

BackgroundSoundTimerHandleCallback函數(shù)必須得定義成UFUNCTION,如下所示:

UFUNCTION()

void BackgroundSoundTimerHandleCallback();

AudioComponent還能調(diào)整音量等各種關(guān)于聲音的操作,

比如調(diào)節(jié)音量為百分之50:

Adjust Volume Duration:聲音改變需要的時間(自動淡出淡入)

Adjust Volume Level: 聲音音量的百分比大小

BkSoundPlayer->AdjustVolume(0.0f, 0.5f);


UE4筆記2 背景音樂的操作的評論 (共 條)

分享到微博請遵守國家法律
贵港市| 河北区| 五莲县| 仁化县| 綦江县| 德阳市| 武平县| 方山县| 瓮安县| 临邑县| 北安市| 宜君县| 邹城市| 徐水县| 南部县| 临安市| 留坝县| 余姚市| 金溪县| 长武县| 乳山市| 汨罗市| 阿尔山市| 灵川县| 内丘县| 民权县| 离岛区| 潢川县| 普定县| 台东市| 淮北市| 博白县| 秦安县| 岢岚县| 湖州市| 英德市| 甘洛县| 大邑县| 吴旗县| 韶关市| 哈尔滨市|