青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Heath's Blog

There is no end, it is just the beginning! - A Game Developer's Notes

FMOD Event System——事件樹策略、加載、內存分配

    FMOD最新API—Event Sytem,提供了比FMOD Ex更高層的接口,使引擎開發人員無需關注諸如音頻數據管理、播放控制、channels管理等底層細節,而把精力放在考慮如何為上層應用(如:場景/技能/UI編輯器中的音效、音樂的編輯,游戲中各種音效、音樂的播放)設計適合的框架。此外,它還提供了相應的設計工具—FMOD Designer,讓音效制作人員既可以很容易地實現各種復雜音效,也能方便地對各種參數(如:3D音效的范圍、播放屬性)進行設置,最終打包輸出事件索引文件(.fev)和音頻數據文件(.fsb)給應用程序使用。

    FMOD Event System有一些核心概念需要編程者知曉,我抽空對前段時間使用該API時產出的文檔(基本上是譯文+自己的理解)進行了整理,希望對使用該API的朋友有所幫助。[ P.S. 后面有時間再整理出更為詳盡的文檔 ]

術語 

    事件—事件樹的葉子節點。獲得其句柄后可以播放它,更新它的參數。

    事件組—包含事件和子事件組的’文件夾’,用于組織和加載目的。

    波形庫(wave banks)—被加載的.fsb文件。

    事件實例內存(event instance memory)—事件播放所要求的內存。如果在編輯工具中,事件的’max playbacks’屬性被設置,FMOD將為對應數量的實例分配足夠的內存,以使它們能被同時播放。通常,如果不使用特殊的DSP效果(諸如,反射、回音、和聲等),內存的使用是很小的,而且有些DSP效果并不需要內存。

事件層次和波形庫的組織
 

    應該將事件劃分到多個邏輯組中,便于一起加載和使用,例如關卡音效和公共音效。因此,你可以使用EventGroup::loadEventData加載整個分支,其中占有內存最大的通常是波形庫數據。如果事件引用的FSB(即波形庫)已經在加載其它事件時載入,絕不會發生重復加載。(注:FSB可以調用預加載函數預先加載到內存)


加載/分配概覽

  • EventSystem::load加載fev文件,僅分配保存事件樹結構對象的小塊內存。
  • EventGroup::loadEventData從FSB文件加載所有波形數據(需要指定組和其子組)。該函數會遞歸加載所有子組。
  • 如果沒有調用Event::loadEventData加載,當用戶調用 EventGroup::getEvent/EventGroup::getEventByIndex加載指定事件時,會自動加載其所需的波形數據。
  • 如果EventSystem::getGroup/EventGroup::getGroupByIndex的cacheevents參數被置為true,將會為指定組中的所有事件分配事件實例內存(包括DSP特效內存)。這些函數不會遞歸加載。如果cacheevents參數被置為false,FMOD會等到你調用EventGroup::getEvent/EventGroup::getEventByIndex時分配事件實例內存。
  • EventGroup::freeEventData卸載所有波形數據并且釋放該組包含的所有事件實例內存(包括子組)。遞歸釋放。
  • 如果EventGroup::loadEventData被調用,或者cache了group,EventGroup::getEvent/EventGroup::getEventByIndex不會有任何讀盤開銷。


一些提示

  • 在游戲加載階段調用EventGroup::loadEventData加載靜態波形庫(static banks)。
  • 如果需要有選擇性的加載,不要使用EventGroup::loadEventData,使用EventGroup::getEvent/EventGroup::getEventByIndex,或者使用cacheevents = true調用GetGroup。
  • EventGroup::freeEventData會釋放組及其包含的子組和孩子相關的所有內存,包括波形庫數據和事件實例內存。如果后面又要使用到該組數據,就不得不重新加載。
  • EventGroup::getEvent/EventGroup::getEventByIndex實際返回的是event instance句柄而非真正的指針,"Max playbacks behavior"的設置可能會讓前面獲得的句柄失效。
  • FMOD Event System并未對SetMute進行優化,使靜默狀態下的音頻消耗降低。

支持多Project加載
  Fmod Event System支持多個fev文件的加載,這有利于大項目支持多個音頻制作人員,他們可以自己管理自己的fmod工程。具體做法是調用EventSystem::Load多次,當然資源制作是要有規定的,每個fev文件的root命名不能相同,下面是正確的資源管理方式:



   對于用category來控制音量和靜默的處理跟單個fev相同,具有相同category的fev應該會自己合并。

 

 

參考文獻

[1]  FMOD Ex & Designer Documents

 

Written by Heath(heath.luo@gmail.com) using Windows Live Writer

posted on 2010-01-18 23:40 Heath 閱讀(3935) 評論(0)  編輯 收藏 引用 所屬分類: Game Development

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲一区久久久| 欧美在线播放一区二区| 欧美成人亚洲成人| 亚洲第一黄网| 亚洲国产清纯| 欧美午夜激情视频| 性欧美xxxx大乳国产app| 欧美一区二区三区婷婷月色| 影音先锋成人资源站| 亚洲国产欧美久久| 国产精品xxxxx| 久久久在线视频| 欧美高清一区| 欧美伊人精品成人久久综合97| 久久久精品一品道一区| 亚洲区免费影片| 一区二区三区视频免费在线观看| 国产精品亚洲精品| 男男成人高潮片免费网站| 欧美激情网友自拍| 欧美专区在线| 欧美激情一区二区| 久久国产精品一区二区三区| 欧美14一18处毛片| 欧美在线免费看| 欧美精品久久一区| 久久精品一级爱片| 欧美日韩亚洲一区二区三区在线 | 国产精品视频最多的网站| 久久亚洲国产精品日日av夜夜| 欧美精品电影| 久久久国产成人精品| 欧美日本在线一区| 欧美影院在线| 亚洲精品一区二区三区99| 国产精品一区毛片| 亚洲日本成人网| 狠狠色丁香久久综合频道| 亚洲精品在线免费观看视频| 国产一区自拍视频| 亚洲深夜福利网站| 亚洲精选中文字幕| 久久久综合精品| 性色av一区二区三区| 欧美日韩午夜在线视频| 欧美电影在线观看完整版| 国产日韩欧美在线一区| 亚洲视频欧洲视频| 日韩写真在线| 欧美成年人网站| 女女同性精品视频| 激情综合五月天| 久久av资源网| 久久久久国产成人精品亚洲午夜| 国产精品久久久久av免费| 亚洲美女色禁图| 一本色道久久| 欧美久久成人| 亚洲精品免费网站| 99re视频这里只有精品| 免费美女久久99| 欧美69视频| 在线欧美电影| 免费欧美在线视频| 欧美成人中文字幕| 亚洲青涩在线| 欧美日本一区二区高清播放视频| 亚洲国产合集| 亚洲午夜精品在线| 国产精品日韩二区| 欧美一区高清| 老鸭窝毛片一区二区三区| 激情综合网激情| 你懂的视频欧美| 亚洲人成网站影音先锋播放| 一区二区三区国产精华| 国产精品成人国产乱一区 | 欧美一级二区| 国产性天天综合网| 久久久99免费视频| 亚洲国产成人精品视频| 亚洲视频免费| 国产乱理伦片在线观看夜一区 | 一区二区欧美日韩视频| 欧美一级专区免费大片| 在线观看一区二区精品视频| 欧美精品一区二区视频| 亚洲午夜在线观看| 久久综合影视| 中文国产成人精品| 国产一区二区三区奇米久涩| 免费观看成人网| 在线视频你懂得一区二区三区| 久久精品91久久久久久再现| 亚洲国产精品一区二区第四页av| 欧美精品一区在线| 欧美一区二区三区在线观看视频 | 在线中文字幕不卡| 国产亚洲美州欧州综合国| 久久久久久尹人网香蕉| 欧美尤物巨大精品爽| 久久亚洲春色中文字幕| 亚洲乱码国产乱码精品精| 欧美三级韩国三级日本三斤| 欧美一区二视频| 亚洲九九精品| 久久久亚洲一区| 亚洲婷婷综合久久一本伊一区| 国产一区二区三区在线观看精品 | 亚洲私拍自拍| 亚洲国产精品va在线看黑人动漫 | 亚洲日本欧美天堂| 国产欧美日韩综合一区在线播放| 免费久久99精品国产自在现线| 亚洲欧美激情诱惑| 一本色道久久综合| 欧美激情国产日韩精品一区18| 欧美一区二区三区日韩| 一本色道久久综合亚洲精品高清| 国语对白精品一区二区| 国产精品女人毛片| 欧美日韩中文在线观看| 免费成人av在线| 久久九九全国免费精品观看| 亚洲一区在线观看视频| 亚洲国产日韩欧美在线图片| 狼狼综合久久久久综合网| 欧美与黑人午夜性猛交久久久| 亚洲香蕉在线观看| 一本大道久久a久久综合婷婷 | 国产伦精品一区二区三区视频黑人| 欧美大片在线观看一区二区| 久久久亚洲一区| 久久国产一区二区| 欧美一区二区私人影院日本| 性欧美1819性猛交| 亚洲男女自偷自拍图片另类| 亚洲小说欧美另类婷婷| 亚洲视频自拍偷拍| 亚洲欧美国产日韩天堂区| 亚洲小少妇裸体bbw| 亚洲影院在线| 性视频1819p久久| 性欧美18~19sex高清播放| 性18欧美另类| 久久激情五月激情| 久久在线免费视频| 免费成人黄色片| 欧美激情精品| 欧美视频1区| 国产精品自拍三区| 国内精品视频在线播放| 狠狠色香婷婷久久亚洲精品| 影音欧美亚洲| 亚洲伦理自拍| 亚洲宅男天堂在线观看无病毒| 亚洲在线一区| 久久免费的精品国产v∧| 欧美成人午夜影院| 亚洲精品免费电影| 亚洲综合成人在线| 久久婷婷人人澡人人喊人人爽| 蜜臀久久99精品久久久久久9| 欧美另类高清视频在线| 国产精品久久久久久影视| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美高清视频在线播放| 欧美日韩久久| 国产精品美女久久福利网站| 好看的亚洲午夜视频在线| 亚洲巨乳在线| 欧美一区二区黄| 亚洲电影免费观看高清| 中文成人激情娱乐网| 久久精品九九| 欧美日韩在线视频首页| 国内成人精品2018免费看| 亚洲精一区二区三区| 欧美在线免费看| 亚洲国产综合在线| 先锋影音久久久| 欧美精品免费播放| 国产一区视频在线观看免费| 99精品福利视频| 久久久一区二区三区| 99精品视频免费全部在线| 久久久久久成人| 国产精品久久国产愉拍| 亚洲高清视频一区二区| 小处雏高清一区二区三区| 亚洲高清av在线| 欧美在线观看视频一区二区三区| 欧美全黄视频| 亚洲缚视频在线观看| 欧美中文字幕不卡| 在线亚洲美日韩| 欧美精品日韩三级| 亚洲国产精品一区二区www在线| 久久国产精品毛片| 在线视频日韩精品|