基於Unity Audio Mixer的音效系統

2021-10-20 01:29:57 字數 898 閱讀 5718

當時公司在開發乙個fps吃雞專案,我接到了這個需求任務。

需求:支援聲音迴避功能(不同種類音效,能夠相互影響音量等效果)

支援多種音效過濾器功能(支援高通濾波,低通濾波,回音效果等各種濾波器效果)

支援音效快照功能(支援室內外區分,環境區分,天氣區分等效果)

簡單的說,就是編寫乙個在unity 目前的音效功能上,編寫乙個類似wwise,fmod等音效引擎的系統。

重點:封裝後的整個系統,可以做到,增加音效,刪除音效,增加音軌,刪除音軌,以及各種引數配置,都不需要程式參與,一切皆可以由策劃自行配置,

做到開箱即用的效果。

audio mixer是unity自帶的乙個音軌系統,熟悉了解裡面的音軌增刪改等,了解快照功能。

最終我們專案的音軌系統大概有100多條音軌。

採用乙個預製體,對應乙個音軌,不同音軌對應不同的預製體,從而做到重複利用,管理所有音軌。

並且所有音軌的配置可以自由配置,配置內容都可以抽離到配置表中,從而達到,解放程式設計師。

採用表控制的形式,抽離出兩張**,音效配置表,音軌配置表,可能不同音效,使用的是同乙個音軌。

通過不同預製體,對應控制到不同的音軌,達到不同音軌,不同配置效果,在音效管理層中,管理好音軌預製體,進行復用。

通過audio mixer,對不同音軌之間的效果進行配置。

通過兩張表,音效配置表,配置不同音效的各種配置,然後音效配置表對應到具體的音軌配置表,音軌配置表配置不同的音軌配置。

簡化介面。

最後實現,使得策劃可以通過編輯器擴充套件工具,對音效進行配置,對音軌進行配置,對各種效果器進行配置。

(有部分內容暫時不方便放出,畢竟是公司目前正準備上線的專案)

AspectJ基於xml和基於註解

一 基於xml 執行的切入點中具體方法有返回值,則方法結束會立即執行後置通知,然後再執行環繞通知的放行之後的 2 連線點即所有可能的方法,切入點是正真被切的方法,連線點方法名 其中,只有環繞通知的切入點引數不一樣,是可以放行的切入點 3 異常通知是處理異常 切面類中的異常通知的方法引數列表中異常引數...

拓撲排序(基於dfs 基於佇列)

dfs函式的返回值表示是否成環,若存在有向環,則不存在拓撲排序。不包含有向環的有向圖稱為有向無環圖 dag 可以借助dfs完成拓撲排序,在訪問完乙個結點時把他加入當前拓撲序的首部。舉個栗子 比如乙個 1,2 1,3 2,3 的有向無環圖,就先搜尋1,再遞迴搜尋2,再搜尋3,3沒有出度了,於是放進拓撲...

基於insert update delete的注入

inset注入原理 所謂inset注入就是指我們前端註冊的資訊會被後台通過insert操作插入到資料庫裡邊去,若此時後台沒有做出相應的處理就會構成insert注入。insert注入方法 insert用法例如 insert into member username,pw,phonenum,email,...