最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

Wwise+UE4踩坑筆記

2021-09-15 16:29 作者:kkxszz  | 我要投稿

平時慢慢攢下來的各種小坑吧,持續(xù)更新,不對的地方歡迎指正~


1.?自帶的Occlusion系統(tǒng)(不是Spatial Audio那套)

手動添加的Ak組件、Wwise預(yù)制的AkAmbientSound藍(lán)圖、Wwise預(yù)制的動畫notify播放音頻時自動生成的Ak 組件,都有可以單獨(dú)設(shè)置的Occlusion設(shè)置。

?

默認(rèn)設(shè)置的檢測通道是Visibility(所有可視的物體都會遮蔽聲音)

檢測間隔0.2秒(改成0是關(guān)閉此功能

AK組件的Details


什么設(shè)置都不做的話,播放的音頻會根據(jù)攝像機(jī)是否能看到該物體進(jìn)行遮蔽。(在Wwise里關(guān)閉Occlusion也可以解決此問題, 如果想要善用此功能可以做具體的設(shè)置)

?

工程設(shè)置里面可以設(shè)置默認(rèn)的Occlusion Channel (影響通過Post Event等節(jié)點(diǎn)臨時生成的Akcomponent,不影響已經(jīng)存在的akcomponent)

Integration Settings

AkComponent.cpp里可以修改默認(rèn)刷新時間 (影響通過Post Event等節(jié)點(diǎn)臨時生成的AkComponent,不影響已經(jīng)存在的AkComponent)

AkComponent.cpp


2.?Animation

在動畫上預(yù)覽聲音通知的時候,經(jīng)常會出現(xiàn)3D聲音聽不到的情況,這種時候右鍵動畫預(yù)覽場景更新一下相機(jī)位置,就可以聽到了……

AnimNotify_AkEvent 這個通知【打勾follow時】會在人物的mesh component下尋找ak組件,尋找不到的話會臨時掛一個AkComponent使用。如果用這個通知的話最好提前在mesh component下掛好ak。(但是它預(yù)覽的時候還是找不到的,有點(diǎn)蛋疼)。【不打勾follow】時,它就是一個定點(diǎn)播放的音效,不用到ak組件。

?

3.?觸發(fā)音頻的節(jié)點(diǎn)的混用注意事項(Post event /post ak event/ post event at location 等)

使用Post Event時,會在所選Actor下生成一個AkComponent并使用;

使用Post Ak Event時,會使用所選的AkComponent;

使用Post Event At Location時,會使用WwiseGlobal;

Animation 上使用的AnimNotify_AkEvent,打勾’Follow’的話效果同’Post Event’,不打勾’Follow’的話效果同’Post Event At Location’

AnimNotify_AkEvent 通知

Set Switch和Set RTPC也都有指定Ak的版本(節(jié)點(diǎn)名字是一樣的,target不一樣)。

?

經(jīng)測試,自動生成的AkComponent和手動添加的Ak無法被另一種使用方式識別,因此設(shè)定rtpc和switch的時候要注意,最好不要把target為actor的節(jié)點(diǎn)和target為ak的節(jié)點(diǎn)混用。

?

另外,RTPC有全局/object兩種用法,設(shè)置全局時actor不要連即可。當(dāng)局部有賦值時,全局?jǐn)?shù)值會被忽略,這一點(diǎn)也要注意一下。

?

Post Event和Post Event At Location有異步加載的版本(好像直接使用打包之后會有問題)。自行使用Async Load Asset來做異步加載,需要做特殊處理,不然打包之后資源無法正常播放。

?

?

4.?AK Switch/State/RTPC 類

在前幾個版本(2.6之前?)中無法作為一個類填在DataTable里(更低版本藍(lán)圖里也不能使用這個變量),此時只能使用name,升級到后期版本之后可以直接引用這些類,會方便很多。?用了AK Switch Object和Ak State Object后,Set State/Set Switch節(jié)點(diǎn)不再需要GroupName。

?

不需要填Group


?

5.?EBP相關(guān)

?

首先,能不用的話,盡量不要用。(Wwise 2019.2.x早期版本會默認(rèn)開啟,記得檢查設(shè)置)對于已經(jīng)使用和不得不使用的情況,強(qiáng)烈歡迎大家多多分享遇到的坑以及解決辦法。這里僅分享個人經(jīng)驗。

?

設(shè)置:

Edit > Project Settings > Wwise > Integration Settings ?(這個頁面在不同Wwise版本差別較大)以下是設(shè)置參考

Integration Settings
User Settings

Wwise里也需要修改Project Settings里的設(shè)置。Generate Per Bank Metadata File還有Include GUID需要選。

Project Settings


因為關(guān)閉了自動同步,所以進(jìn)行生成音頻資源的步驟是:

1)保存Wwise工程? ?2)UE中Build—Force Asset Synchronization? 3)Generate Sound Data

Build界面

開啟EBP時,建議禁用Split Switch Container Media,原因如下

?

EBP的異步加載相關(guān):(常見問題:打包后播放音頻顯示Event Id Not Found)

AkEvent只是一個殼子,它的資源是所引用的Media。加載AkEvent的時候自動會加載其Meida,但是沒有回調(diào),只提供IsMediaReady用來判斷是否加載完。

AkAudioEvent.h


用EBP時需要版本控制Ignore以下文件夾(Wwise工程目錄下):

.cache/*

GeneratedSoundBanks/*

?

EBP的各種其他小問題:

1.?打開UE工程一直顯示Cannot create asset in.... 或者存在同名akevent,無法進(jìn)行其他操作(無法clear)。

1)關(guān)掉UE引擎,回滾版本控制的Content/WwiseAudio(或者自定義路徑)文件夾至上一個無錯誤版本,重新generate。過程中保證自己的Wwise工程不受影響。

2)如果沒有解決,檢查之前回滾的重命名之類的操作有沒有導(dǎo)致多余的uasset存在,可以手動刪除。

3)再沒有解決,【暴力方法】刪除所有的EBP生成的資源(服務(wù)器里面也刪除),重新生成并上傳。(我這樣干過,沒丟引用。小心使。)

?

2.?Generate Sound Data的時候會Checkout(更新)過多的文件;或者很大一部分莫名其妙的報錯;或者GenerateSoundData時沒有報錯但是無法正常生成資源

1)檢查UE工程設(shè)置里的Wwise > User Setting > Installation 里的Wwise安裝路徑是否正確、是否是同一個Wwise版本。

2)檢查UE工程設(shè)置里的Wwise > Integration Settings里的 Wwise Project Path 是否正確。Sound Data里的設(shè)置是否和原來一樣。

3)檢查Wwise工程目錄下的.cache文件夾以及GeneratedSoundBanks文件夾是不是被版本控制改成了只讀。


3. 一個音頻源的多個復(fù)制體,如果Stream的開關(guān)不一樣的話,會造成播不出來的情況。因為它們在UE里面是一個Media,不支持同時stream和非stream。這個在使用時要避免。

?


6.?平臺設(shè)置:

打包到平臺上發(fā)現(xiàn)沒有聲音(PS5的報錯內(nèi)容為 “Error :InitAudioOutContext:Failed sceAudioOut2ContextCreate with MaxObjectPorts 128, maxPorts 16,numGrains 512,queueDepth 4 ……”),很大原因是Wwise被UE的該平臺原生音頻系統(tǒng)擠掉了,需要進(jìn)行禁用,具體參考下圖:

?

?

PS5Engine.ini里面則是修改為

AudioDeviceModuleName=””

AudioMixerModuleName=””

UseAudioMixer=false

?

?

7.?Spatial Audio?已知的坑

1.?Room和其中的物體上的ak組件的加載先后問題。不動的物體需要在Room加載完之后再更新一下位置,不然無法識別和Room關(guān)系。(編輯器中無此問題)

2.?用了這套就別忘了關(guān)掉所有ak組件上的Occlusion。

3. AkGeometry無法加在普通的StaticMesh Actor上,所以應(yīng)用限制還是比較大。

?


Wwise+UE4踩坑筆記的評論 (共 條)

分享到微博請遵守國家法律
西吉县| 仙游县| 海门市| 万宁市| 靖远县| 会泽县| 锦州市| 屏南县| 沅江市| 子长县| 镇宁| 家居| 台中县| 金门县| 镇远县| 乃东县| 施秉县| 彰化市| 北碚区| 桃源县| 宜川县| 陇西县| 嫩江县| 抚宁县| 辽宁省| 汉中市| 车险| 璧山县| 祁阳县| 北流市| 玉林市| 满洲里市| 惠州市| 鞍山市| 保德县| 宣威市| 凤凰县| 浙江省| 清苑县| 宁化县| 巩留县|