tag:blogger.com,1999:blog-45763761462156908602024-03-22T04:08:51.607+08:00鄭建文的部落格 — 音樂、影像、與互動表演的異想空間這個部落格是用來記錄關於現代音樂(器樂、電子音樂等)、即時影像、互動影音的相關資訊,內容包含現代音樂作曲的相關資料,Max/MSP/Jitter 互動影音程式設計的相關資源介紹。另外也包含鄭建文的音樂作品影音資料等,歡迎藝術家們提出跨領域創作之合作計畫。Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.comBlogger295125tag:blogger.com,1999:blog-4576376146215690860.post-64519855724394860932024-01-18T23:24:00.004+08:002024-01-18T23:28:01.051+08:00新作品《塵沙的呢喃》電子音樂於 WOCMAT & TCMA 音樂會中發表(12/22)<p><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space-collapse: preserve;">12/22 在 WOCMAT 研討會的音樂會中,我所發表的純電音的創作「塵沙的呢喃」,是採用了 AI 生成的聲音素材,來取代錄音而來的素材,再進行聲音變形與加工,包括粒子化合成技術,以及透過 max/msp 所設計的頻譜延遲效果器來後製,加工處理完後,覺得聲響還不錯。這次的音樂會海報與動態海報影片都是我使用 AI 工具來設計的,未來會有想把這首作品加上自己搭配 AI 工具設計的影像,也許會更有趣?</span></p><div class="x11i5rnm xat24cr x1mh8g0r x1vvkbs xtlvy1s x126k92a" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, "system-ui", ".SFNSText-Regular", sans-serif; font-size: 15px; margin: 0.5em 0px 0px; overflow-wrap: break-word; white-space-collapse: preserve;"><div dir="auto" style="font-family: inherit;">我的作品《塵沙的呢喃》的樂曲解說如下:</div><div dir="auto" style="font-family: inherit;">這首電子音樂作品啟發自佛家詩句: <span style="font-family: inherit;"><a style="color: #385898; cursor: pointer; font-family: inherit;" tabindex="-1"></a></span>「菩提本無樹,明鏡亦非台,本來無一物,何處惹塵埃。」以及聖經中的「塵歸晨,土歸土。」,沙塵代表因不同的因緣際會所興起的暫時波瀾、既然「本來無一物」,塵沙飛揚中的各種恩怨情仇也終將歸無。此首電子音樂作品主要以粒子化合成及頻譜延遲等的技術,將鋼琴、金屬敲擊聲等聲響解構與陌生化,再依據整體音樂張力輪廓的設計與結構上的需求,將這些聲音素材加以重新組合成曲。作品開頭以細碎的金屬性聲音,配合延遲與殘響效果器及背景持續的長音,呈現一種如夢似幻的氛圍;中間段則進入動盪不安的飛沙走石的聲音想像,以細碎聲響在空間中快速的移動來呈現;中後段則以噪動不安的緊湊節奏為特徵,主要以鋼琴音堆透過聲音變形而來;末段則回歸開頭的夢幻氛圍,以細碎金屬聲響與背景長音為特徵,隨張力的漸減與音量淡出而結束作品。</div><div dir="auto" style="font-family: inherit;"><br /></div></div><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW8DrXCkUNsekMxauLfeLO_jUPO-04Omk7VukYRIQ8rR_BWKG3IKTwBeiEHpVhFsoZM517-FanqgtQayGcn2kdW2XnL6igFCjn9kDRPTnLZm0B-uTmJdHfxEOSqDFtwnnAXYWk4PLhQ-ubNe7R3CKtr57ILiEBhnqm_bFX1TrASc0cJwzl34qQYk2ghMpk/s1716/poster.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1716" data-original-width="964" height="944" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW8DrXCkUNsekMxauLfeLO_jUPO-04Omk7VukYRIQ8rR_BWKG3IKTwBeiEHpVhFsoZM517-FanqgtQayGcn2kdW2XnL6igFCjn9kDRPTnLZm0B-uTmJdHfxEOSqDFtwnnAXYWk4PLhQ-ubNe7R3CKtr57ILiEBhnqm_bFX1TrASc0cJwzl34qQYk2ghMpk/w531-h944/poster.png" width="531" /></a></div><br /><p></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='427' height='355' src='https://www.blogger.com/video.g?token=AD6v5dxZvTX2Z_1O4u69mqIKNeA7J0NJkG48rYnzgF56LLJ56zMMdvx3UtN1c4YxbTeceNl20PiDeMAjfQ81UY0j9Q' class='b-hbp-video b-uploaded' frameborder='0'></iframe></div><br />Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-46302452135425100382022-12-07T23:31:00.068+08:002023-01-04T23:47:56.714+08:00我的給大提琴與互動音樂系統的作品「未說的故事」於 WOCMAT 2022 作品發表會中發表(12/7)<p>我的給大提琴與互動音樂系統的作品「未說的故事」(A Story Untold)於 2002 年 WOCMAT 音樂科技與音訊技術研討會暨「電腦音樂學會 2022 年委託創作作品發表會」中發表,此音樂會於 2022 年 12 月 7 日在誠品表演廳舉行。這首作品由國家文藝基金會補助,中華民國電腦音樂學會委託創作,並由大提琴家張智惠演奏。</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4o3F1k9OKpfA-opm7j7tEHgDrWzHDrp3G5_ahiKg3WwsmnO3tony6daU2Btklb6TqGhVnw62HNBmNCsAmtkzePpaGxIzcQjWJ3swpHNTrXAK2LHCrIVZu4Eu8sWHCBdvznHnD7kqtMBOG0dAFHdY516FEZOtyVahEQr4keCcEIzRq_4QjFhThHj828g/s9295/%E9%9F%B3%E6%A8%82%E6%9C%83%E6%B5%B7%E5%A0%B1_final.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="9295" data-original-width="6437" height="810" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4o3F1k9OKpfA-opm7j7tEHgDrWzHDrp3G5_ahiKg3WwsmnO3tony6daU2Btklb6TqGhVnw62HNBmNCsAmtkzePpaGxIzcQjWJ3swpHNTrXAK2LHCrIVZu4Eu8sWHCBdvznHnD7kqtMBOG0dAFHdY516FEZOtyVahEQr4keCcEIzRq_4QjFhThHj828g/w562-h810/%E9%9F%B3%E6%A8%82%E6%9C%83%E6%B5%B7%E5%A0%B1_final.png" width="562" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEj2s8z9W3p8iVYwqaRVLVfzvTQpulMybNTp8ZpubQQjHuGSBocv8nS5U7DSYUHWX2idEjQhssyrJ81JkdQCzlu_VB4wFuBgLZ1eHKRJQjL_PWOl1o63M6VZH4ytsXmI0AiPli80cVXsdh_hC5zmQjCQQplxtjr5FJoZk4M7vCbQgk4rBEhq5Wt-1OFg/s2048/wocmat%20poster.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1420" height="820" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEj2s8z9W3p8iVYwqaRVLVfzvTQpulMybNTp8ZpubQQjHuGSBocv8nS5U7DSYUHWX2idEjQhssyrJ81JkdQCzlu_VB4wFuBgLZ1eHKRJQjL_PWOl1o63M6VZH4ytsXmI0AiPli80cVXsdh_hC5zmQjCQQplxtjr5FJoZk4M7vCbQgk4rBEhq5Wt-1OFg/w569-h820/wocmat%20poster.jpeg" width="569" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg47jLg6djNKnNFvoGYz7yDZnv5itD7wZtzY-P3EfG-9yLDyTgtNJgSdS8hIz0rAnfHem5XIcX0V-DCOYi21r5J9fBL4ZiLGvQDfoCH8DuWIzsIriDN8CnunnLaSizh3RjZLCvmifJVjSXe7RshDfQvASgh59YKTDRBIVKNkAr8GSAk1eUKm1FX01fJrQ/s1754/%E7%AF%80%E7%9B%AE%E5%96%AE%E7%B0%A1%E6%AD%B7%E8%88%87%E6%A8%82%E6%9B%B2%E8%A7%A3%E8%AA%AA%20a%20story%20untold.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1754" data-original-width="1239" height="814" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg47jLg6djNKnNFvoGYz7yDZnv5itD7wZtzY-P3EfG-9yLDyTgtNJgSdS8hIz0rAnfHem5XIcX0V-DCOYi21r5J9fBL4ZiLGvQDfoCH8DuWIzsIriDN8CnunnLaSizh3RjZLCvmifJVjSXe7RshDfQvASgh59YKTDRBIVKNkAr8GSAk1eUKm1FX01fJrQ/w574-h814/%E7%AF%80%E7%9B%AE%E5%96%AE%E7%B0%A1%E6%AD%B7%E8%88%87%E6%A8%82%E6%9B%B2%E8%A7%A3%E8%AA%AA%20a%20story%20untold.jpg" width="574" /></a></div><br /><p><br /></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-55295340465488944612022-11-03T20:14:00.001+08:002022-11-03T20:14:11.341+08:00我的古箏獨奏作品「雨荷」於 2022 台北國際現代音樂節中發表 (10/30)<p>我的古箏獨奏作品「雨荷」為這次 2022 現代音樂協會所舉辦的「台北國際現代音樂節」的委託創作作品,於 2022 年 10 月 30 日下午 14:30 在「十方樂集」中發表,非常感謝古箏獨奏家吳妍萱老師讓我的作品增色不少。整場音樂會日後還會剪輯成公開的影音資料,由國家文藝基金會補助,現代音樂協會執行。</p><p><br /> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdRtbSeIJS1Q_3mddxScxroZq0BF7UbCByAg3_WFpybxlx8n6I5BXCBnh9wfr6mYxWvI4vZ5PH3xJf04gUGIWSOdLRXujhMoVqGQV-YtWwbUg-RSvyVBEYih6y5yhSiBhwTF5C3GwSxoaSb5t1wDWcQY1_TrpI6BBck80qVdFvLJKcmVQdA8_skBG9hg/s2048/2022%20poster.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1441" height="742" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdRtbSeIJS1Q_3mddxScxroZq0BF7UbCByAg3_WFpybxlx8n6I5BXCBnh9wfr6mYxWvI4vZ5PH3xJf04gUGIWSOdLRXujhMoVqGQV-YtWwbUg-RSvyVBEYih6y5yhSiBhwTF5C3GwSxoaSb5t1wDWcQY1_TrpI6BBck80qVdFvLJKcmVQdA8_skBG9hg/w522-h742/2022%20poster.jpeg" width="522" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><br /></div><p></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-70795258276066776232021-11-18T00:53:00.002+08:002021-11-18T01:03:55.593+08:00我的互動音樂新作品「時間與空間的拼貼畫」將於 11/28 發表「聲響藝術節」音樂會<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTCONbMtvAWpqBNayWKJxmA20JptCcn4-QpTSHph1hWzSG_Hm60FiONlDG0DacHodFLjqMDWVCHdnWQks4P7XQWfwrA01FBQnP73prdyjbG5hdGw0PW5hJMG_UpwgFe5dWKE6L9Kfj6cYZ/s1811/1128%25E8%2581%25B2%25E6%25B3%25A2%25E6%25B5%25B7%25E5%25A0%25B1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1811" data-original-width="1280" height="653" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTCONbMtvAWpqBNayWKJxmA20JptCcn4-QpTSHph1hWzSG_Hm60FiONlDG0DacHodFLjqMDWVCHdnWQks4P7XQWfwrA01FBQnP73prdyjbG5hdGw0PW5hJMG_UpwgFe5dWKE6L9Kfj6cYZ/w461-h653/1128%25E8%2581%25B2%25E6%25B3%25A2%25E6%25B5%25B7%25E5%25A0%25B1.jpg" width="461" /></a></div><br /><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNwPbYK2AZU9of5dtzMVG5kWC5mSMV8M_jK7COkjvQ4IVCFKx6mIrgHzrpqmh8FzH8qGjNeWpNIRE9hJPCZOQWARLTw-Fa1qI1ANWoHvDBbs_PBj6AgcPA7i_K8WyaLrz5trNUzHq0X_X8/s2048/1128%25E5%25AE%2598%25E7%2589%2588%25E6%25B5%25B7%25E5%25A0%25B1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2048" data-original-width="1446" height="651" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNwPbYK2AZU9of5dtzMVG5kWC5mSMV8M_jK7COkjvQ4IVCFKx6mIrgHzrpqmh8FzH8qGjNeWpNIRE9hJPCZOQWARLTw-Fa1qI1ANWoHvDBbs_PBj6AgcPA7i_K8WyaLrz5trNUzHq0X_X8/w460-h651/1128%25E5%25AE%2598%25E7%2589%2588%25E6%25B5%25B7%25E5%25A0%25B1.jpg" width="460" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVFx1ZNiXfyGqgLcXDkVy2U5QMLH2VddEifPvzLOhb1t-3Tv0j7LN4UbUCW14p-OKVmtbYnJm64GVGjnSfwTtUS2FOCH06U0WGECsNlqvB7RYfc93BIG4_yxekNGp9Hu-6ajYilSujZQE0/s196/11_28_QR_+code.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="196" data-original-width="196" height="196" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVFx1ZNiXfyGqgLcXDkVy2U5QMLH2VddEifPvzLOhb1t-3Tv0j7LN4UbUCW14p-OKVmtbYnJm64GVGjnSfwTtUS2FOCH06U0WGECsNlqvB7RYfc93BIG4_yxekNGp9Hu-6ajYilSujZQE0/s0/11_28_QR_+code.png" width="196" /></a></div><br />Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-31587591892204503602021-06-07T17:13:00.080+08:002021-06-07T17:13:00.217+08:00adaptive music & game audio 筆記 17 - 音樂安排<p></p><ol style="text-align: left;"><li>基本段落可以分為:exploration (後半段 loop 為 to battle)- battle (後半段 loop 為 to exploration 及 to death) - death (to life)</li><li>每個段落的的前半段不作 loop,僅作為淡入的階段,後半段才執行 loop。</li><li>to exploration 及 to death 基本的設定相同,但可以將 multi instrument 置入 battle 參數介面中作為 stinger ,不依照時間軸來播放,僅依照 battle 的參數是否達標而進入觸發區,並藉由隨機的 play list 、音量的微幅隨機變動等,來增加原本 battle 段落的音樂之豐富性,由於沒有定 loop region,故需要按下 loop 播放的按鈕,否則 multi instrument 只會播放一次。此外,為了讓置入 battle 參數介面中的 multi instrument 可以在音量上獨立自動化,可在該 multi instrument 的音量旋鈕上按右鍵,選擇 automation,如此可以界定 battle 參數在某臨界值以上可以讓特定的 multi instrument 的音量淡入或淡出。</li><li>在某個 audio 軌道上按右鍵,可以加入效果器。效果器的音量選紐也可以按右鍵作音量自動化。</li><li>承 3, 若使用 battle 參數來控制 multi instrument 執行 stinger 進行播放,且又搭配 loop 按鈕持續循環播放,而僅用 battle 參數來製音量大小聲,則一旦 battle 參數有更動,可能又會讓這個 stinger 被聽到,因為我們並非用 loop region 來區別觸發與非觸發,而是使用 battle 參數臨界值來處發,故一旦啟動播放之後,播放就不會停止。</li><li>承 5,故此種作法可能並不適合用來同時控制 兩個屬性相反的 stinger。故把 death (to life) 獨立成時間軸的一部分會比較易於控制被分配到該段的音樂,而不至於影響其他音樂播放。</li><li>async 的播放模式中,其播放器的播放點與主要播放器的播放點不同步。cut 選項則是讓音樂在離開觸發區(例如 loop region)後就立即停止。若有設定 ADSR,則 ADSR 會優先處理,使得主播放器的播放點離開觸發區時,仍可以執行 release 的內容。</li></ol><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/PB7xuUtELPw" width="320" youtube-src-id="PB7xuUtELPw"></iframe></div><br /><div><br /></div><div><br /></div><p></p><p>其他參考資料:https://www.youtube.com/playlist?list=PLp4vT3ssm5SUqwHvbverTlYu4LwwkWHek<br /></p><ul style="text-align: left;"><li>下面的影片使用不同的方法來進行不同段落的跳接。主要使用 loop region 來直接設定 non-looping 的狀態的條件,符合條件時,則播完 loop 區而不再回頭 。此種用法可搭配 transition region to 來使用,若符合條件,則在該標籤的尾端會跳到別的段落。</li><li>利用 health 參數來控制新增的打擊樂節奏是否要播放,若 health 參數低於臨界值時,且 intensity 數值高時,則打擊樂會加入播放。此外,multi instrument 也被用來增加同一段音樂的內容變化。</li></ul><p></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/DgzgAXe-6fI" width="320" youtube-src-id="DgzgAXe-6fI"></iframe></div><br /><ul style="text-align: left;"><li>下面這個影片則介紹了 submix 的建置方法,但可惜右鍵的功能選單已經跟目前 FMOD Studio 2.0 的版本不同。</li><li>下面的影片也介紹了 transition time line 的用法,適合用在段落切換過程中,加入 crossfade 以及 wosh 特效來作前段暫時收尾的設計。</li><li>一個 loop region 中,也可以插入多個 transition to 的標籤,來指定哪個時間點適合用來進行段落的切換。</li></ul><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/mt9fRuPc9c8" width="320" youtube-src-id="mt9fRuPc9c8"></iframe></div><br />Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-84087584280280595752021-06-01T01:11:00.001+08:002021-06-01T01:11:15.317+08:00110 年下學期課程預告 - 互動裝置與表演科技<p style="text-align: justify;">台北科技大學 110 下學期選課即將開始,課程內容將集中在視覺化物件導向程式設計軟體 Max/MSP/Jitter 之使用與應用,包含聲音設計、影像偵測、以及影音整合,另外也會請業師進行 Max/MSP/Jitter 與其他軟硬體整合應用的工作坊(例如:Max/MSP/Jitter 與 Arduino、感應器的結合,或 Max/MSP/Jitter 與 Unity 的整合運用等)。 這門課之學生期末成果請參考下面網頁:</p><p style="text-align: justify;"><a href="http://ilab-ntut.blogspot.com/p/blog-page_1371.html">http://ilab-ntut.blogspot.com/p/blog-page_1371.html</a></p><p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzpheiiADdY1br0AVm7Q8xoxTmau4ZWCmPlRikAgIb91iQNByLsM-MX7ATof2Fyh8bUOaSeeMjuAvpb9zHuQcAbBMntEZItq5I-n-aPlU2xn4Rqhvg6EsZ59a3dU1xkr1RVaNqpEmAG0Rb/s900/Copy+of+Event+Flyer+Poster+Template+-+Made+with+PosterMyWall.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="600" height="750" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzpheiiADdY1br0AVm7Q8xoxTmau4ZWCmPlRikAgIb91iQNByLsM-MX7ATof2Fyh8bUOaSeeMjuAvpb9zHuQcAbBMntEZItq5I-n-aPlU2xn4Rqhvg6EsZ59a3dU1xkr1RVaNqpEmAG0Rb/w499-h750/Copy+of+Event+Flyer+Poster+Template+-+Made+with+PosterMyWall.jpg" width="499" /></a></div><br /><p></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-74164976262098493382021-05-30T01:53:00.000+08:002021-05-30T01:53:00.757+08:00adaptive music & game audio 筆記 16 - FMOD Mixer Snapshot & Mixer Routing<p></p><div class="separator" style="clear: both; text-align: center;"><ol><li style="text-align: justify;">Snapshot 的使用目的在於紀錄特定的混音設定,當遊戲中遇到需要改變混音設定時,則被立即套用。常見的使用情境:環境的轉換、健康狀態的轉換、變換情緒(例如降低音量、提高環境音,來增加緊張、懸疑的氛圍)。其分為 overriding snapshot (混音設定值立即改變為 snapshot 的設定)以及 blending snapshot (混音設定值與先前的設定值合併)</li><li style="text-align: justify;">操作方法範例:(1) 利用 add return track 建立效果器的通道,並且掛上 delay 效果器。(2) 把聲音軌道指向前述新建的 return track。(3) 開啟 mixer 視窗,新建一個 snapshot,並且將需要載入設定的混音器通道(Groups, Returns, VCAs)按右鍵選擇 scope in 的方式納入 snapshot 的控制。</li><li style="text-align: justify;">將 mixer 視窗縮小,從中拖曳建好的 snapshot 至 timeline 中,等待被觸發。</li></ol><span style="text-align: justify;"> </span><span style="text-align: justify;">利用 add return track 建立效果器的通道</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDBpfK7d4G6dve_0uQkS944nTTarK9O8yhBIO06_r-UhO-FLJYgscdhsmYr4tGzeGeJ1DWWYtk99UpyEaB5KGQrjTiDpvwWUhqg5htZsWexKHDy1lEXzMPEsFIKbO7FFAvpUwodageXUXg/s2048/Screen+Shot+2021-05-30+at+12.54.32+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="2048" height="313" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDBpfK7d4G6dve_0uQkS944nTTarK9O8yhBIO06_r-UhO-FLJYgscdhsmYr4tGzeGeJ1DWWYtk99UpyEaB5KGQrjTiDpvwWUhqg5htZsWexKHDy1lEXzMPEsFIKbO7FFAvpUwodageXUXg/w501-h313/Screen+Shot+2021-05-30+at+12.54.32+AM.png" width="501" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><span style="text-align: justify;">return track 掛上 delay 效果器</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK-wvdMxd0nnrpRDDIt7UQN1iSEjHkLIeRb_3hYlcPT4DByeLIcncaftMU0P7rcrU8WZZOHww4yreZLKr3ufX92G0uw0waqGdT0-7BwwtEqngR00JvUSdD3MPSZULHaVXoGC-6zfa9XoLg/s2048/Screen+Shot+2021-05-30+at+1.01.13+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="2048" height="314" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgK-wvdMxd0nnrpRDDIt7UQN1iSEjHkLIeRb_3hYlcPT4DByeLIcncaftMU0P7rcrU8WZZOHww4yreZLKr3ufX92G0uw0waqGdT0-7BwwtEqngR00JvUSdD3MPSZULHaVXoGC-6zfa9XoLg/w501-h314/Screen+Shot+2021-05-30+at+1.01.13+AM.png" width="501" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><span style="text-align: justify;">把聲音軌道指向前述新建的 return track</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBwsxKoVY8j5fH9jZ5z8B1_niTpR5HpkYJ1K0dLP0K5Wf4TTXL8Jiy7wu-bvIH6hKMSh-vyJTCm3-wqV12olMHvAu0CCtfnixs2XaCEp1_jRBtRgzxznVyUROSPTNm27nsNbOv-Ov9Bzg-/s2048/Screen+Shot+2021-05-30+at+1.01.28+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="2048" height="321" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBwsxKoVY8j5fH9jZ5z8B1_niTpR5HpkYJ1K0dLP0K5Wf4TTXL8Jiy7wu-bvIH6hKMSh-vyJTCm3-wqV12olMHvAu0CCtfnixs2XaCEp1_jRBtRgzxznVyUROSPTNm27nsNbOv-Ov9Bzg-/w513-h321/Screen+Shot+2021-05-30+at+1.01.28+AM.png" width="513" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><div style="text-align: center;"><span style="text-align: justify;">開啟 mixer 視窗,新建一個 snapshot</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7aLCzMSvEdfzYu75s97rWUc9sgRxE2qVjO1FERLID1f5d5GgDeC5VrEot2fzkfjuEhqOzZA9PxlcPxyekP-NGovAYxDvx2l0vi5rbeM3sgIHgEi73bpklD9lsuCGRQ84Q-mzyrtpBs_Du/s2048/Screen+Shot+2021-05-30+at+1.02.07+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="2048" height="315" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7aLCzMSvEdfzYu75s97rWUc9sgRxE2qVjO1FERLID1f5d5GgDeC5VrEot2fzkfjuEhqOzZA9PxlcPxyekP-NGovAYxDvx2l0vi5rbeM3sgIHgEi73bpklD9lsuCGRQ84Q-mzyrtpBs_Du/w504-h315/Screen+Shot+2021-05-30+at+1.02.07+AM.png" width="504" /></a></div><br /><div style="text-align: center;"><br /></div><div style="text-align: center;"><span style="text-align: justify;">將需要載入設定的混音器通道按右鍵選擇 scope in 的方式納入 snapshot 的控制</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjH00mzNK93ZbJomMt748QHcgyqTcH4f1betPT4uw08zAUawzbvkay-x691Y4uuukMZ3Lax638xDMVHKtxVr1pDzB7Jq3CN7pbH07CylNVBBEWBly-1w5jtrIZebEq9xsHGCQwod4kWoP0E/s2048/Screen+Shot+2021-05-30+at+1.02.44+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="2048" height="314" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjH00mzNK93ZbJomMt748QHcgyqTcH4f1betPT4uw08zAUawzbvkay-x691Y4uuukMZ3Lax638xDMVHKtxVr1pDzB7Jq3CN7pbH07CylNVBBEWBly-1w5jtrIZebEq9xsHGCQwod4kWoP0E/w503-h314/Screen+Shot+2021-05-30+at+1.02.44+AM.png" width="503" /></a></div><br /><div><br /></div><div style="text-align: center;"><span style="text-align: justify;">將 mixer 視窗縮小,從中拖曳建好的 snapshot 至 timeline 中,等待被觸發。</span></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiN7X1bxiKfylW1K7Ov9uJd9JF3SJ6VQ1w6IugEu0VcQzSfzO9hsL3-zsSfllDOhadtkzmasifXf0DqkIcl5RWJoklvtXS9zwN2po6n48qSuYC3FjGepFvEKl0xaveX6UA_FOePY1vkiDGH/s2048/Screen+Shot+2021-05-30+at+1.04.37+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1280" data-original-width="2048" height="307" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiN7X1bxiKfylW1K7Ov9uJd9JF3SJ6VQ1w6IugEu0VcQzSfzO9hsL3-zsSfllDOhadtkzmasifXf0DqkIcl5RWJoklvtXS9zwN2po6n48qSuYC3FjGepFvEKl0xaveX6UA_FOePY1vkiDGH/w492-h307/Screen+Shot+2021-05-30+at+1.04.37+AM.png" width="492" /></a></div><br /><div><br /></div><div>參考資料:</div><div class="separator" style="clear: both; text-align: center;">FMOD 之 Snapshot 運用</div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/d9pKaE_IyP4" width="320" youtube-src-id="d9pKaE_IyP4"></iframe></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;">FMOD 音訊架構簡介</div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/DuP1rPmA0DI" width="320" youtube-src-id="DuP1rPmA0DI"></iframe></div><br /><div style="text-align: center;"> FMOD 混音簡介</div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/Fc6NB9PL9H4" width="320" youtube-src-id="Fc6NB9PL9H4"></iframe></div><div><br /></div><div style="text-align: center;">Snapshot 應用</div><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/HFUeymsbjQE" width="320" youtube-src-id="HFUeymsbjQE"></iframe></div><br /><div style="text-align: center;"><br /></div><br /><div style="text-align: justify;">其他教學影片:</div><div style="text-align: justify;"><a href="https://ask.video/video/fmod-studio-101-introduction-to-fmod-studio/8-8-snapshots-explained"><div class="separator" style="clear: both; text-align: center;"><br /></div>https://ask.video/video/fmod-studio-101-introduction-to-fmod-studio/8-8-snapshots-explained</a></div><p></p><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><br />Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-50471820721891383472021-05-21T00:38:00.063+08:002021-05-21T00:38:00.212+08:00adaptive music & game audio 筆記 15 - FMOD 天氣之互動音效設計<p></p><ol style="text-align: left;"><li style="text-align: justify;">在 FMOD 中新增一個參數軌道,命名為 rain,並在該參數軌道建立三個 event instrument,分別置入 light rain, medium rain, heavy rain 三種聲音檔案與設置各自的 loop region,且每個 event instrument 檔案的軌道都在音量上加入 ADSR 的調變。</li><li style="text-align: justify;">將上述三個 event instrument 彼此交疊,其中,為了選取 medium rain ,則需將 heavy rain, light rain 按右鍵選取 send to back。選取 medium rain 之後,點左、右上角拉出淡入、淡出的曲線。</li><li style="text-align: justify;">另開一個 audio 軌道,在對應到 rain 的參數軌道之較大數值處,加入 multi instrument,載入數個雷聲聲音檔案,開啟 loop 模式,開啟 probability,設定為 80% 左右,並將 time 中的 delay interval 範圍調大 (350~550 ms 左右),使得雷聲偶而會被延後播放。此外,將 thunder 軌道的音量予以自動化,接近較大的 rain 數值時,則設置音量淡入之自動化曲線。</li><li style="text-align: justify;">thunder 軌道的音量控制也可以改用 ADSR 來控制音量,增加 release 的長度,如此可以讓rain 參數值離開 multi instrument 區域時,雷聲音量不至於衰減太快而顯得突兀。</li></ol><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuXphg88JbfoTkadozw1V6bUrg0Movi1aoFTNi1f2ZNdFxRXbTyAPwAvhKcHYBJxz-_ymbg201uiq5gfgXx96UZ3w2_Y9bYOBuEU7La6jFer-YNaabBs1DBx92D8jFs_HpFXaVTqHDKVL-/s2048/Screen+Shot+2021-05-09+at+2.47.16+AM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1391" data-original-width="2048" height="405" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuXphg88JbfoTkadozw1V6bUrg0Movi1aoFTNi1f2ZNdFxRXbTyAPwAvhKcHYBJxz-_ymbg201uiq5gfgXx96UZ3w2_Y9bYOBuEU7La6jFer-YNaabBs1DBx92D8jFs_HpFXaVTqHDKVL-/w598-h405/Screen+Shot+2021-05-09+at+2.47.16+AM.png" width="598" /></a></div><div><br /></div><br /><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/H-P55lm3Acs" width="320" youtube-src-id="H-P55lm3Acs"></iframe></div><div style="text-align: center;">使用 volume 自動化曲線來控制雷聲</div><br /><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/8W_6I-yLvxg" width="320" youtube-src-id="8W_6I-yLvxg"></iframe></div><div style="text-align: center;">使用 ADSR 來控制雷聲</div><div><br /></div>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-8536853845485463602021-05-14T23:48:00.002+08:002021-05-27T16:34:14.544+08:00adaptive music & game audio 筆記 14 - Transition Time Line<p style="text-align: left;"></p><ol style="text-align: left;"><li>建立 Transition 區域之後,若雙擊 transition,會產生 transition timeline,用來作為前一段聲音與下一段聲音直間的過度區域,然而,一旦打開 transition timeline 之後,原先利用 volume 的 ADSR 之調變設定就會僅 attack 的部分有作用,而沒有 release,故前一段聲音的淡出曲線需自行重新在 transition timeline 中繪製 (通常以只繪製前一段音樂的淡出曲線。而不繪製後一段音樂進來時的淡入曲線)</li><li>若欲收起 transition timeline,則只要把後一段的音樂起點,在 timeline 上拉回至前一段音樂的尾巴處,則 transition timeline 就會自動消失,但此種動作會使原本 transition timeline 之中的資料直接被刪除,並無法復原。 </li></ol><div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtzvZTmreDHMWr2EKrgg4hcg4xR9O2-wJIxnHHEi5Ry2hmeivAIsTWwzgvxWkU5RfPfylSBFplotbeXQjWjzdJn5xJ-YU8J7buMwND1hA58nZCY9YW4d88fYRXWo-eokzQy1wLTSxxL-Jw/s1870/Screen+Shot+2021-05-27+at+4.30.49+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1112" data-original-width="1870" height="292" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtzvZTmreDHMWr2EKrgg4hcg4xR9O2-wJIxnHHEi5Ry2hmeivAIsTWwzgvxWkU5RfPfylSBFplotbeXQjWjzdJn5xJ-YU8J7buMwND1hA58nZCY9YW4d88fYRXWo-eokzQy1wLTSxxL-Jw/w491-h292/Screen+Shot+2021-05-27+at+4.30.49+PM.png" width="491" /></a></div></div><p></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-71005809462281222962021-05-08T15:38:00.010+08:002021-05-08T23:48:35.430+08:00adaptive music & game audio 筆記 13 - 多重聲音檔案 loop 播放之環境音設計<p></p><ol style="text-align: left;"><li>製作背景環境音時,有時會需要播放多個不同長度的聲音檔案,且需要讓這些檔案各自迴圈播放,而不至於產生 click 方法:</li><ol><li>為了避免環境音的聲音檔案產生方位感,故需刪除 3D panner。</li><li>使用 nested event 的作法,在 audio track 加入 event instrument,再將這些 event instrument 的當案都各自置入聲音檔案,各自在 nested event 中設置跟每個檔案相同長度之 loop region。 </li><li>回到上一層的介面,為這些 event instrument 設置統一的 loop region,用來作為 trigger zone。然而每一軌到的 event instrument 需要比所設置的 loop region 長度更長一些,以避免 loop 播放時進行重新觸發(retrigger)所產生的 click。</li><li>event instrument 中若是放入車子呼嘯而過的聲音,則可以在其中置入 scatter instrument,則可以有更多關於檔案之間的間隔、播放機率等之設定選項,例如減少喇叭出現的頻率。</li></ol></ol><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJl7i4kC2en7bUFhaxOS9n4yrqCYEeXkKbKFs0RtSrQ-APNDGywyn2rkEPFr8lPzTb2Za_Nb5YCefdqvHH9MDj8PcZ6HobPZ594ns57ZqggBWdC4YqUavqc1QfO23SxEOGg_mqYhmOQbop/s2048/Screen+Shot+2021-05-08+at+3.36.50+PM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1301" data-original-width="2048" height="278" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJl7i4kC2en7bUFhaxOS9n4yrqCYEeXkKbKFs0RtSrQ-APNDGywyn2rkEPFr8lPzTb2Za_Nb5YCefdqvHH9MDj8PcZ6HobPZ594ns57ZqggBWdC4YqUavqc1QfO23SxEOGg_mqYhmOQbop/w438-h278/Screen+Shot+2021-05-08+at+3.36.50+PM.png" width="438" /></a></div>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-49264694691251634802021-05-07T13:39:00.007+08:002021-05-09T02:01:22.491+08:00adaptive music & game audio 筆記 12 - FMOD 的 Direction, Event Orientation, Elevation<ul style="text-align: left;"><li>內建參數 Distance 之使用情境:FMOD 的內建參數包括 distance, direction, elevation 等,是Unity 中不需要利用 coding 就能傳送到 FMOD 的參數,可能的使用情境如:藉由玩家靠近某聲源的遠近來影響聲音的變化,距離聲源越近,則音量越大聲、高頻也越明顯。方法有二:</li><ul><li>方法一:利用一個同時有高頻與低頻的機器聲,搭配加入loop region,並運用低通濾波器之自動化,以 distance 參數來控制低通濾波器的截止頻率。</li><li>方法二:利用堆疊兩個音軌,一個是高頻、一個是低頻,搭配 loop region,並運用 distance 參數來控制 volume 的自動化,距離聲源越近,高頻的軌道音量漸增。(方法二會比方法一效果更佳)。</li></ul><li>內建參數 Direction, Event Orientation, Elevation: <a href="https://www.fmod.com/resources/documentation-studio?version=2.0&page=parameters-reference.html">https://www.fmod.com/resources/documentation-studio?version=2.0&page=parameters-reference.html</a></li><ul><li>Direction 是指聲源或 Event Distance 與「聽者所面對的方向」之間的角度,若聽者朝著前方,且聲源在聽者的正前方,則為 0 度,聲源在聽者的左方,則為負值 (0 ~ -180),聲源在聽者的右方則為正值(0 ~ 180)</li><li>Event Orientation 使指「聽者所面對的方向」與聲源或 Event Distance 所面對的方向,兩者之間的角度。面對面為 180 度,朝同一個方向則為 0 度。</li><li>Elevation 與 Direction 類似,但是指在 x y 的垂直平面上,「聽者所面對的方向」與聲源所在之處相對於聽者的方位之角度。垂直的角度,而非平面的角度。</li></ul></ul>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-47383743037190567642021-05-06T15:17:00.010+08:002021-05-07T13:23:09.278+08:00 adaptive music & game audio 筆記 11 - FMOD 隨機播放、自動化、互動控制參數<p></p><ol style="text-align: left;"><li>隨機播放:利用 multi instrument 載入多重聲音,可以使 FMOD 進行隨機播放並可設定 pitch、volume 等的參數之調變或隨機變化,搭配多重軌道之聲音疊合,適合用來播放槍聲、腳步聲等。在 multi instrument 中的控制面板上,除了每個音檔可以控制播放的機率之外,按下三角形圖示,展開進階設定,還可以設置整個 multi instrument 被觸發時會播放聲音的機率。</li><li>音高自動化之注意事項:若有設定 loop region 且又設定 pitch 隨機變化時,需注意 pitch 的變化會改變原本聲音的長度,因此有可能 loop region 未涵蓋到即時音高變化所改變的長度,則可能造成聲音突然切斷的 click。</li><li>自設參數:當遊戲情境需要設計一個白天可愛、晚上恐怖的特殊生物叫聲時,有兩種方法:</li></ol><p></p><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px;"><p style="text-align: left;"></p><ul style="text-align: left;"><li>方法一:可以在 timeline 上,開兩個 audio 軌道,分別置入一個 multi instrument,每個 multi instrument 載入多重的怪獸聲音,利用新增 time of day 參數,來控制 volume 的自動化。 </li></ul><p></p></blockquote><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px;"><p style="text-align: left;"></p><ul style="text-align: left;"><li>方法二:建置一個自動化參數,命名為 time of day,並把兩個 event instrument 直接建在 time of day 的軌道上,各自載入可愛怪獸、恐怖怪獸的聲音(nested event),則可以利用 time of day 的參數搭配 play 鍵,直接觸發介面上方互動控制的參數。此外可以按右鍵設定初始值。(測試時,播放游標鍵必須在 event instrument 的範圍內,才有辦法按下 play 鍵)。</li></ul><p></p></blockquote><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgd1JUtqt5Tfd6fv8kJHso9gxc9uATgJ-PnObbtK6NH2qbiyfr5-Q5YpQsL5Wdx8lyuyH93FPqKMwt1qNrareBIgZ2-wawSYdV4uS2f1wvDR4fDnFg72_UMbFLyA3m82tIOwqdkSAvZMPXX/s2048/Screen+Shot+2021-05-06+at+3.16.52+PM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1242" data-original-width="2048" height="323" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgd1JUtqt5Tfd6fv8kJHso9gxc9uATgJ-PnObbtK6NH2qbiyfr5-Q5YpQsL5Wdx8lyuyH93FPqKMwt1qNrareBIgZ2-wawSYdV4uS2f1wvDR4fDnFg72_UMbFLyA3m82tIOwqdkSAvZMPXX/w532-h323/Screen+Shot+2021-05-06+at+3.16.52+PM.png" width="532" /></a></div><p style="text-align: left;"><br /></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-23533898704356937172021-04-30T09:35:00.127+08:002023-06-09T00:44:57.223+08:00 adaptive music & game audio 筆記 10 - FMOD 基礎<p></p><ol style="text-align: left;"><li style="text-align: justify;"> event instrument 與 single instrument 的使用方法:event instrument 是一個模組化的事件,可以包含很多 single instrument,無論其在主介面中的長度如何,播放游標經過時便可觸發裡頭的聲音事件,並將內容播放完。倘若在主介面中的 logic track 建立了 loop region,則 event instrument 只在播放游標還持續在 event instrument 長度內時,才會播放其中的內容 (亦即才會保持持續被觸發的狀態)。換句話說,若要 event instrument 中的內容持續循環播放,則 event instrument 內的 logic track 以及外部主介面的 logic track 都必須建立 loop region。(async 表示該聲音檔案的播放軸與主介面的播放軸沒有同步,且主介面的播放軸離開觸發區時,該聲音檔案仍會持續播放置結束。按下 async 的同時,會出現 cut 按鈕,若同時按下 cut 按鈕,則該 instrument 會立即停止播放。)</li><li style="text-align: justify;">multi instrument 的使用方法:multi instrument 中可以置入多個聲音檔案,但也是要在主介面的 logic track 中有建立 loop region 的情況下,才能持續運作。multi instrument 中可以選擇 loop 播放、或隨機播放。scatter instrument 跟 multi instrument 類似,可以置入多個聲音檔案,但 scatter instrument 是用來「同時」播放多個檔案,而非是分次播放為主。「同時播放的檔案數量」可以藉由 polyphony 參數來設定,且每次「開始」播放的檔案之間的時間間隔可以由 min & max spawn interval 來調整(該參數是指音檔「開始的時間」之間隔,而與結束的時間或音檔的長度無關),並可用 spawn total 來限制「全部播放的檔案數量」。其中,min & max scatter distance 可以用來設定每個檔案與聽者間的空間距離。</li><li style="text-align: justify;">nested event (stacking event) 的使用方法:multi instrument 中可以置入 event instrument 或 multi instrument,主要目的是讓聲音檔案可以有更多的播放控制方法。例如用來設定某個音效類型的播放機率。可能的使用時機例如:有數個不同的喇叭聲、以及數個車子呼嘯而過的聲音要被觸發,但喇叭聲希望出現的機率較小,則設置之步驟如下:(1) 建立一個 multi instrument,並在 muli instrument 中,按滑鼠右鍵,建立一個 event instrument,使之形成一個 nested event,再進到這個 nested event (event instrument) 中,建立一個 multi instrument,將不同的喇叭聲都匯入到這個 nested event 中的 multi instrument 中。(2)到最上層的 multi instrument 中,匯入數個車子呼嘯的聲音,則可以分別就 multi instrument 中的 event instrument(包含數個喇叭聲)及車子乎嘯聲,各自設定出現的機率。(如下圖)(3) async 表示該 event instrument 的播放軸與主介面的播放軸沒有同步,如此可以讓不同長度的聲音檔案,可以各自在 nested event 中各自作自己的 loop,不受到主介面時間軸的影響。</li></ol><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDdlsZsjHCYhbhLNMEVe4T22VUBYfbgTde47s_SdB7DlOhtvL7eOAEKg8ZnC85WIjmsB_gE-CjdY-8UeHaQayjrpBPu0GfQXj4jsreGwNj9AU3Z0_itrmC0GQriVFJjVBIuDqdnb-jVu8K/s1576/Screen+Shot+2021-04-28+at+10.38.16+PM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1576" data-original-width="1370" height="498" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDdlsZsjHCYhbhLNMEVe4T22VUBYfbgTde47s_SdB7DlOhtvL7eOAEKg8ZnC85WIjmsB_gE-CjdY-8UeHaQayjrpBPu0GfQXj4jsreGwNj9AU3Z0_itrmC0GQriVFJjVBIuDqdnb-jVu8K/w433-h498/Screen+Shot+2021-04-28+at+10.38.16+PM.png" width="433" /></a></div><br /><div style="text-align: justify;"><ul><li>補充:multi instrument 以及 scatter instrument 的播放清單中的 random 模式與 shuffle 模式之異同:<span style="font-family: inherit;"><span style="background-color: white; color: #050505; font-size: 15px;">Shuffle mode would be to shuffle the playlist so that the songs don't play in any specific order.</span><span style="background-color: white; color: #050505; font-size: 15px;"> </span><span style="background-color: white; color: #050505; font-size: 15px;">Random mode would pick a random song from a playlist and play it</span><span style="background-color: white; color: #050505; font-size: 15px;">. ==> Shuffle 強調同一個音樂播放清單,但播放順序不同,以及每首音樂只會播放一次,直到清單的曲目都播過為止。Random 強調隨機播放,所以也有可能同一首曲子連著播放兩次。</span></span></li></ul></div>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-31712339116671749942021-04-17T18:35:00.021+08:002022-06-23T17:10:33.820+08:00adaptive music & game audio 筆記 9 - Vertical Re-mixing 在 Unity 中之模擬<p><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space: pre-wrap;">測試影片說明:</span></p><p><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space: pre-wrap;">在 Unity 中建立四個 plane,分別代表不同「張力參數」的區域。人物進入每個不同的 plane,音樂就會疊加一個預設好的音樂層次,藉此模擬不同情境或緊張度時,同一首曲子中的織體與節奏型的即時變化。</span><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space: pre-wrap;">此種非線性的音樂播放方式,是隨機偵測遊戲玩家的動作或所在情境所得到的特定參數,來驅動音樂片段的切換、然而卻又要預期要能得到連接順暢的音樂串接。從音樂形式結構的想法來看,應該是頗為有趣。</span></p><p></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/IO8qoXlhaUM" width="320" youtube-src-id="IO8qoXlhaUM"></iframe></div><br /><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;">以下為 vertical re-mixing 時務執行中,技術上必須考量的事宜:</span></span><p></p><p style="text-align: justify;"><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;">vertical re-mixing 在 FMOD 音量設定,是根據自訂的 intensity 參數的升降而改變,在預設切換點附近讓音量隨 intensity 的變化而漸進改變的設定是有必要的。由於在 Unity 中,將不同的 box collider 對應到不同的 intensity 參數時,並無法真正讓切換中的音樂淡入淡出,故需要仰賴 FMOD 中的 intensity 底下的 seek speed 模組,選擇 asymmetric ,設定其中的 increase、decrease 參數。</span></span>然而這兩個參數是以「 /s 」為單位,意旨受到 Unity 控制的 intensity 的參數若瞬間跳到下一個等級時,FMOD 要以怎樣的「速度」讓播放所用的 locator 漸進移動預期目標的 locator。換言之,increase, decrease 將決定音量漸進到達指定的目標時所需的時間。通常切換 intensity 時,會將音樂淡入設定成較快的速度,以反應立即性;音樂淡出則設定成較慢的速度。</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjR_h5_8MNrURl8bdMfMV4rDWuihEgfXOXtbxDbKtbqK4ztiSrGAL24WI96gRosxbd5RFlyK-CLZBCFDajvldnXxSAG9hVzX_-0NfutPjfmn9xCti0jR9xCLRUmrVFQIJhtmhr0Z84utVQl/s2048/Screen+Shot+2021-04-17+at+5.42.34+PM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1271" data-original-width="2048" height="319" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjR_h5_8MNrURl8bdMfMV4rDWuihEgfXOXtbxDbKtbqK4ztiSrGAL24WI96gRosxbd5RFlyK-CLZBCFDajvldnXxSAG9hVzX_-0NfutPjfmn9xCti0jR9xCLRUmrVFQIJhtmhr0Z84utVQl/w513-h319/Screen+Shot+2021-04-17+at+5.42.34+PM.png" width="513" /></a></div><p style="text-align: center;">vertical re-mixing 之音量自動化與 intensity 的對應關係</p><p style="text-align: center;"><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcVD2KVliZVPCOeMMQmO8SP1QguoTx1HdrlyL0T-83z1qn6MVX_oMAz1LoNJjY0hhyphenhyphenmf9I7s9aamoif4TvlHsdMEn0DzP1vr4ZbO5VY_4rhASMqCCiALJlyExziWdOCVKMay-fzJxonRmn/s2048/Screen+Shot+2021-04-17+at+6.03.14+PM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1371" data-original-width="2048" height="341" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcVD2KVliZVPCOeMMQmO8SP1QguoTx1HdrlyL0T-83z1qn6MVX_oMAz1LoNJjY0hhyphenhyphenmf9I7s9aamoif4TvlHsdMEn0DzP1vr4ZbO5VY_4rhASMqCCiALJlyExziWdOCVKMay-fzJxonRmn/w509-h341/Screen+Shot+2021-04-17+at+6.03.14+PM.png" width="509" /></a></div><div style="text-align: center;"><br /></div><div style="text-align: center;">利用 seek speed 中的 increase、decrease 設定來影響音量的漸進改變</div><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space: pre-wrap;"><br /></span><p></p><p><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;">以上的測試,是採用商業音樂資料庫的音樂,直接多軌輸出而成,因此音樂內容並非特別針對 adaptive music 的需求而設計。horizontal re-sequencing 的手法則因為一般的商用曲庫的曲子不適用,故無法在此測試,可能必須另外進行創作。此外, Henry Scott 的 adaptive music 影片,提供了使用 seek speed 來處理淡入淡出的問題的想法、及使用 quantization 來避免音樂被立即截斷所產生的突兀性,解決了我的一些疑惑。</span></span></p><p><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space: pre-wrap;">Henry Scott 的 adaptive music 音樂示範影片提供了一些有趣的音樂創作上的想法,將 horizontal re-sequencing 與 vertical re-mixing 兩者同時結合在一首曲子中,結構上已經整合 adaptive music 的主要技巧,頗值得</span><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space: pre-wrap;">參考:</span></p><p></p><p><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;"></span></span></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/SMv3ynVGz2g" width="320" youtube-src-id="SMv3ynVGz2g"></iframe></div><div><br /></div><p><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;">從上述測試過程與實驗中,有一些心得與想法羅列如下:</span></span></p><p></p><ol style="text-align: left;"><li><span style="background-color: white; color: #050505; font-size: 15px; white-space: pre-wrap;">素材的本身或和聲進行方式可能是影響是非線性的音樂片段能否連接得順暢的因素。</span></li><li><span style="background-color: white; color: #050505; font-size: 15px; white-space: pre-wrap;">太複雜的和聲進行或較長的樂句可能都不利於非線性、隨時可切換的播放方式。</span></li><li><span style="background-color: white; color: #050505; font-size: 15px; white-space: pre-wrap;">由於每個已經安排好順序的音樂片段還可以利用 FMOD 每次隨機選擇不同的版本來播放(使用 multi-instrument),可以讓重複播放的音樂獲得更多的變化,而不至於使被玩家拖延而重複循環播放的音樂聽起來因過度重複而顯得枯燥。</span></li><li><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;">音樂片段由 DAW 輸出時,應該保留殘響的尾巴,且置入 FMOD 中時,要選擇 asynchronous,表示當播放游標因互動事件而跳到另一段音樂時,前次播放的聲音檔案之殘響仍得以繼續播完。(在 async 的狀態下,只要聲音被觸發一次,就會把該次播完。如果因為該聲音的播放起點在 某一 loop region 中,則可能因此而被多次重新觸發,那麼就會越來越多的同一個聲音檔案在每次觸發時被疊進來。)</span></span></li><li><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;">Transition 標籤下的 Transition Condition 的設定中可以設定 quantization 的小節數,讓 transition 發生時,可以等到走完預設的小節數才跳到下一段音樂。</span></span></li><li><span style="color: #050505;"><span style="background-color: white; font-size: 15px; white-space: pre-wrap;">可以將 "calm" 與 "tense" 的軌道以 group 的方式(運用 mixer 的 send 串接技巧,選取軌道,並在介面下方按滑鼠右鍵,選擇 insert send / to event / new return),分成兩組,當 "threat level" 提升時,便可以使用 volume 的自動化,隨著 "threat level" 增加,驅動 "tense" 群組的音量增加,此外,也配合 "threat level" 參數設置其 seek speed 為 asymmetric 模式,藉此得以調整 "threat level" 參數切換時,數值漸變的速度 。</span></span></li><li><span style="color: #050505;"><span style="background-color: white;"><span style="font-size: 15px; white-space: pre-wrap;">"distance to goal" 是搭配 event reference instrument 的功能,得以將某個部份的音樂內容獨立出來成為一個附屬的模組,該模組中的內容若被觸發時,若主要的 timeline 中的的播放游標持續進行 loop 播放(主要的 timeline 中的此區域設有 loop region),則 event instrument 內的內容會全部播完,當然也可以在 event instrument 內設定 loop region,則只要主 timeline 中的播放游標在播放,event instrument 內的 loop 也會持續循環播放。Henry Scott 的影片中的 event instrument 的使用方法是在 timeline 中建立 event instrument,將輔助提高張力的音樂內容置入其中,僅搭配 "distance to goal" 參數變化,來觸發之。</span></span></span></li><li><span style="color: #050505;"><span style="background-color: white;"><span style="font-size: 15px; white-space: pre-wrap;">有別一般的 instrument 只能播放單一聲音檔案,Event Instrument 則可以用來播放數個 Event (<a href="https://fmod.com/resources/documentation-studio?version=2.0&page=working-with-instruments.html">https://fmod.com/resources/documentation-studio?version=2.0&page=working-with-instruments.html</a>)。</span></span></span></li><li style="text-align: justify;">magnet<span style="background-color: white; color: #050505; font-size: 15px; white-space: pre-wrap;"> regions: 可用來讓播放器游標在特定條件下,由任何段落跳回 magnet region,其作用與 transition region 及 destination region 相反。transition region 是用來從某個特定的 transition region </span><span style="background-color: white; color: #050505; font-size: 15px; white-space: pre-wrap;">段落,依照條件的不同,跳到的不同的指定的段落。magnet 的使用方式,通常使用數個 magnet region 並佔滿整個欲運作的區間來運作(如下面影片所示),或是搭配 transition region (以 transition region 佔滿整個欲運作的區間)的方式來運作,不合 magnet region 的條件,則以 transition region 之條件,來指定播放頭要跳到何處。此外,magnet region 也可以透過設定 offset 模式為 relative,則可讓播放游標由某個段落跳到 magnet region 段落的相對應的時間點。offset 的預設模式是在達成特定條件時,播放游標會跳到 magnet region 的開頭來播放。(原文說明如下: </span><span style="font-family: inherit;">A magnet region is the reverse of a transition region: If a transition region tells the timeline playback position to “go over there,” a magnet region tells it to “come over here.”</span>As for a use-case… Imagine you wanted to make an event in which the timeline was divided up into multiple sections, and you wanted to be able to jump from any section to any other section.With magnet markers, you could simply create one magnet region for each timeline section, and assign them appropriate trigger conditions. <span style="color: #454545; font-family: inherit;">To make the same event without magnet markers, you’d have to use transition regions and destination regions. To start with, you’d need one destination region for each section. You’d also need a number of transition regions equal to the number of timeline sections times two (so that you could have one transition region leading to a section on either side of that section), minus two (because you don’t need a transition region leading to the leftmost section to the left of the leftmost section, nor a transition region leading to the rightmost section to the right of the rightmost section). You’d then need to assign each transition region appropriate trigger conditions. </span><span style="color: #454545; font-family: inherit;">Magnet markers make this kind of event a </span><i style="color: #454545; font-family: inherit;">lot</i><span style="color: #454545; font-family: inherit;"> easier to make. </span>(<a href="https://qa.fmod.com/t/what-is-magnet-region-for/15564/4" style="font-size: 15px; white-space: pre-wrap;">https://qa.fmod.com/t/what-is-magnet-region-for/15564/4</a><span style="background-color: white; color: #050505; font-size: 15px; white-space: pre-wrap;">)</span></li></ol><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/81sYxgHvx-U" width="320" youtube-src-id="81sYxgHvx-U"></iframe></div><div class="separator" style="clear: both; text-align: center;"><br /></div><span style="color: #454545;"><br /></span><p></p><p>下例中則是使用 cubase 結合 FMOD 的製作流程範例,以管弦樂為風格,其中內容也包含了 Event Instrument 的運用。</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/bNNYzVGFgwY" width="320" youtube-src-id="bNNYzVGFgwY"></iframe></div><br /><p><br /></p><span style="background-color: white; color: #050505; font-family: inherit; font-size: 15px; white-space: pre-wrap;"><br /></span><p></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-52692559497431773112021-04-12T14:08:00.002+08:002021-04-30T02:23:41.419+08:00adaptive music & game audio 筆記 8 - 自適性音樂演示在 Unity 中之模擬<p>自適性音樂演式在 Unity 中之雛形模擬之方法,可在建立好 FMOD 的專案與 Unity 之連結之後,進行以下步驟,以作為音樂切換之模擬:</p><p>FMOD 的部分:</p><ol style="text-align: left;"><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #3c3b37; font-size: inherit;">在新的 FMOD project 中,建立新的 timeline event,並拖曳四個檔案至 timeline 中,此時這些聲音檔案會同時出現於 window 底下的 audio bin 中。</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #3c3b37; font-size: inherit;">在 logic track 上,加上 loop region。此外,若 timeline 是以小節數來顯示,則可以在 logic track 中加入 tempo marker ,確保 FMOD 中的小節數,跟音樂軟體的小節數是相同的。(在介面上方可以選擇 display time 或 display beats,選後者則時間軸以小節數來顯示單位)</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #3c3b37; font-size: inherit;">刪除 3D preview 元件。(若不刪除此元件,會使得二聲道音樂播放聲音變得比較小聲)。</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #3c3b37; font-size: inherit;">在 timeline 上方按右鍵新增 parameter ,命名為 intensity,設定最小、最大值(例如 1~4)。</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #3c3b37; font-size: inherit;">將每個軌道予以更名,來對應到 Unity 的四個 plane。</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #3c3b37; font-size: inherit;">將 FMOD 軌道的 volume 按右鍵予以自動化,此時切換到 intensity tab,可以設定 volume(之縱軸數值)與 intensity (之橫軸數值)之間的關係,藉此設定什麼樣的 intensity 該產生什麼樣的 volume。</span></li></ol><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDuH8258hH93YlbLpEiAkJmXcEyjDGsKMIr5RDCvYJP0-Oks84p4TmUwcd36lAFqqPPElB-WJqWuWf_JxuzWZeR6YP4K2J16iCiCInmhU4XvWl4RHdvB5sZeI6IZAFu_z-QRqUwdtjYpCR/s2048/Screen+Shot+2021-04-12+at+1.14.59+PM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1473" data-original-width="2048" height="363" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDuH8258hH93YlbLpEiAkJmXcEyjDGsKMIr5RDCvYJP0-Oks84p4TmUwcd36lAFqqPPElB-WJqWuWf_JxuzWZeR6YP4K2J16iCiCInmhU4XvWl4RHdvB5sZeI6IZAFu_z-QRqUwdtjYpCR/w504-h363/Screen+Shot+2021-04-12+at+1.14.59+PM.png" width="504" /></a></div><br /><span face="sf pro text, -apple-system, system-ui, Roboto, segoe ui, Helvetica, Arial, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol" style="color: #3c3b37;"><br /></span></div><div><span face="sf pro text, -apple-system, system-ui, Roboto, segoe ui, Helvetica, Arial, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol" style="color: #3c3b37;">Unity 的部分:</span></div><div><ol style="text-align: left;"><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="color: #3c3b37;">載入 standard assets</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="color: #3c3b37;">建立四個 plane,排列如下圖所示。</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="color: #3c3b37;">至 assets folder 底下,新建一個 material 資料夾,在其中,以滑鼠右鍵新建四次 material,分別命名為 peace, restricted, detected, conflict,並在各自的 inspector 中分別修改顏色,並把這些 material 分別拖曳到不同的 plane 中。</span></li><li style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="color: #3c3b37;">將 standard assets 中的 character 下的 third person controller 之 prefab 拖曳至已建立的 plane 上。</span>為了播放音樂,必須讓音樂與一個 game object 產生連結,故選擇 third person controller,並在 inspector 中進行 add component,選擇 FMOD event emitter,使音樂能在此game object 上進行聲音發送(emit)。此外,需將 play event 選項指定為 object start,表示執行遊戲時就開始播放音樂。再者,可設定 intensity 來決定剛開始執行遊戲時,需播放對應到哪種 intensity 的音樂。</li><li><p style="box-sizing: border-box; font-size: 16px; margin: 0px; max-width: 60rem; padding: 0px; text-align: justify;"><span style="color: #3c3b37;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white;">為了讓 game 場景的角度適合我們俯瞰,故可選擇 main camera ,並且在 inspector 中修改 transform 的 position 以及 rotation。</span></span></p></li><li><p style="box-sizing: border-box; color: #3c3b37; font-family: "sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"; font-size: 16px; margin: 0px; max-width: 60rem; padding: 0px;"></p><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px;"></blockquote><span style="background-color: white;"><div style="text-align: justify;">建立 box collider,並與 third person controller 產生連結:(1) 在 hierarchy window 空白處按滑鼠右鍵,製造一個 cube,並刪除 mesh renderer, mesh filter (2) 將新建的 cube 設定成 scale (10, 10, 10) 以對應四個 plane 的區塊大小,並確定 Is Trigger 要勾選,才能使 player 進入該區域,不受物理的阻礙。(3) 複製前述的 cube (box collider) 並分別拖曳至一個 plane,修改 position 以對其個 plane 的邊界。(4) 在每個 cube 下 add component,選 FMOD studio parameter trigger (此為 FMOD 已經寫好的程式碼,用來觸發 FMOD 中的參數),並將 Third Person Controller 拖曳至 Studio Parameter Trigger 中的 target。並在 target 選單中選擇 Trigger enter。(此處的 target 是用來指「誰」會觸發 FMOD 中的音樂) (5) 將 Third Person Controller 的 tag 設定成 player,亦即帶有 player 標籤的物件進入 box collider 時,就會觸發 FMOD 的參數事件。此外,也要在 cube 下將 Collision Tag 設定成 player。</div></span></li><li><div style="text-align: justify;"><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="color: #3c3b37; font-size: 16px;">在每個 cube 的 inspector 之 studio parameter trigger 的 event 中,會看到 intensity 選項(其是與是來自 FMOD 中的 intensity 參數之設定有關,且必須是已經執行 assigned to bank 以及 build之後,才會出現相同的參數名稱在 Unity 中)。設定與 FMOD 每個軌道之音量自動化曲線所相對硬的 intensity。</span></div></li></ol><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2NncfQ0gCwkUMeM6V0HYu1Gg19BfQF7Q_b6p74sUfFYyBv1MQkOexmcBxZQb1VbDHPy0V0vvZ5izrWdhFI_SMG2pZAmeuGKDB3GYOwioZLYFU1oK1em13vlYZJX7PhNhR_7HF8MNJxxFL/s2048/Screen+Shot+2021-04-12+at+11.24.25+AM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1401" data-original-width="2048" height="351" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2NncfQ0gCwkUMeM6V0HYu1Gg19BfQF7Q_b6p74sUfFYyBv1MQkOexmcBxZQb1VbDHPy0V0vvZ5izrWdhFI_SMG2pZAmeuGKDB3GYOwioZLYFU1oK1em13vlYZJX7PhNhR_7HF8MNJxxFL/w513-h351/Screen+Shot+2021-04-12+at+11.24.25+AM.png" width="513" /></a></div><br /><span face="sf pro text, -apple-system, system-ui, Roboto, segoe ui, Helvetica, Arial, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol" style="color: #3c3b37;"><br /></span></div></div><div><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="color: #3c3b37;"><br /></span></div>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-88121283089734204442021-03-21T01:23:00.081+08:002021-03-21T01:23:00.770+08:00adaptive music & game audio 筆記 7 - Unity 與 Fmod 的練習檔案之載入<p>1. 開啟 Unity 的新專案,指定好資料夾,並由 Asset Store 尋找 3D Game Kit下載後,選擇所有元件,並載入之。載入元件需要較長的時間,故完成後必須先行存檔,否則有可能遺失資料。</p><p>2. 至 Asset / 3D GameKits / Scenes / Start,點選 Start 開始執行遊戲場景。 </p><p>3. 至 Edit / Project Setting / Quality ,並將 Fantastic 選項改成 Performance,以確保執行順暢,此選項會暫停使用部分 lighting 與圖像的 fidelity。</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGgn-Y5TtXHJAs4S0bqpinSJHEtp7qBXHjnOa85cu5i7v0AP6njMBZzf82c_pH0nTQJ7pJ3gSYRx9KpEQOUd9fEMZQohW4jpyF1k3Xh0HPKeeEdIyecaADtlpF-0_sceWqzolFJR_QAcQk/s2048/Screen+Shot+2020-11-13+at+1.48.30+AM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1048" data-original-width="2048" height="299" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGgn-Y5TtXHJAs4S0bqpinSJHEtp7qBXHjnOa85cu5i7v0AP6njMBZzf82c_pH0nTQJ7pJ3gSYRx9KpEQOUd9fEMZQohW4jpyF1k3Xh0HPKeeEdIyecaADtlpF-0_sceWqzolFJR_QAcQk/w585-h299/Screen+Shot+2020-11-13+at+1.48.30+AM.png" width="585" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><p>4. 測試該遊戲的遊戲音效後,可以至 Edit/ Project Setting / Quality,選擇 Disable Unity Audio,以便將 Audio 的工作轉由 Fmod 執行。</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizqA76s26y9SOEZF7h9UWH6hOJ-3NAyCxmxciE3UY33VraLXJdqNTOfFcUgSTrzoiGH54foYS2ghyTWOP72IJw1za-OsQe9YJCdtn5ajF04T87JDSZltDeHdnV2W-WlwxxWNkwuKuu8Y3E/s2048/Screen+Shot+2020-11-13+at+1.38.16+AM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1062" data-original-width="2048" height="307" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEizqA76s26y9SOEZF7h9UWH6hOJ-3NAyCxmxciE3UY33VraLXJdqNTOfFcUgSTrzoiGH54foYS2ghyTWOP72IJw1za-OsQe9YJCdtn5ajF04T87JDSZltDeHdnV2W-WlwxxWNkwuKuu8Y3E/w591-h307/Screen+Shot+2020-11-13+at+1.38.16+AM.png" width="591" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><p></p><p>5. 至 Fmod 官網下載 Fmod Studio 與 Unity Integration Package,兩者版本必須一致。安裝完 Fmod Studio 之後,並由 Unity 導入 Asset 的方式載入 Unity Integration Package。</p><p>6. 在 Fmod Studio 中,開啟 3D Game Kit 的 Fmod 教材檔案(副檔名為 fspro),並檢查 asset 中的聲音元件(cotnrol + 3 )。完成檢視後,可以另存新檔作為練習之用。</p><p>7. 將 Unity 中的 Fmod setting 的 inspector 面板設定好 Fmod Studio 檔案的路徑,並且確認 Fmod Studio 已經建立 Bank (快捷鍵 F7),完成 Fmod Studio 的存檔。執行完 Fmod Studio 的建檔之後,則 Unity 中的 Fmod setting 底下的找不到檔案的錯誤將會被消除。 </p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-59056144033518096582021-03-14T00:36:00.271+08:002021-06-17T22:06:38.546+08:00adaptive music & game audio 筆記 6 - Fmod 與 Unity 的串接<p>為了使用 Fmod 作為 Middleware 來為 Unity 執行較為複雜的聲音播放,故需使用以下步驟:</p><p>1. 安裝 Unity,取得授權,開一新檔案,並在 asset store 搜尋 Fmod,下載之後,導入 Unity 中。此時 Unity 的下方 console 就會出現錯誤訊息,因為找不到 Fmod 的專案路徑。</p><p>2. 開啟 Fmod 並指定一個檔案夾進行存檔,再到 Unity 中的 Fmod 選單,選取 Edit Settings,則會在 Unity 的 Inspector 中出現 Fmod 的相關設定選項,在此選項中將「Studio Project Path」指向 Fmod 存檔的路徑,找到副檔名為 fspro 的檔案。</p><p>4. 承上,此時雖完成 Fmod 與 Unity 的初步連結,但卻會顯示找不到 Fmod 的 Bank,因此需再到 Fmod 中的 File 選單下,選擇 Build (或使用快捷鍵 F7),來建立 Bank 檔案。Bank 是用來存放 Fmod 的聲音等相關元件,建立成 Unity 可以讀取的形式,以供 Unity 直接進行使用。</p><p>5. 完成 Fmod 與 Unity 的串接之後,可以進行簡單的測試,步驟如下:</p><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;"><p style="text-align: left;">(1) 在 unity 中建立一個 game object,並且在 add component 中加入 Fmod 的元件,選擇 Fmod Studio Event Emitter。</p><p style="text-align: left;">(2) 至 Fmod 中,按右鍵 new event 及 new 2D timeline,修改 Event 的名稱,並將外部的聲音檔案拉到軌道中。並在左方介面中,按滑鼠右鍵選擇 assign to bank (選 master),按 F7 建立 bank,並進行存檔。 </p></blockquote><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;"><p style="text-align: left;">(3) 在 Fmod 的事件中,按滑鼠右鍵,選擇 copy path,再將這個路徑貼到 Unity 的 inspector 的 Studio Event Emitter 的 Event 的路徑設定中。此時,Initial Parameter Value 底下的 add values 選單也會出現原本在 Fmod 文件中自己增加的參數。</p></blockquote><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px;"><p style="text-align: left;">(4) 至 Unity 中,將 (1) 所建立的 game object 之Inspector 中的 Play Event 選成 Object Start,表示該 game object 開始存在時,FMOD 的音樂就要開始播放。此外,並需將 event 選項設定為在 Fmod 中所命名的那個事件。 </p></blockquote><p>6. 按 Unity 的 play 鍵進行測試。 </p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/TlqHnrFnJXs" width="320" youtube-src-id="TlqHnrFnJXs"></iframe></div><br /><p></p><div><b>使用 Unity 2019 需注意的事項:</b></div><div style="text-align: justify;"><ul><li>Fmod studio 的版本必須要跟 Fmod for Unity 的版本一致,目前雖然已經可以由 Unity 的 Asset Store 直接導入 Fmod 的 Assets,但是相容性可能會發生問題。最保險的方式是直接至 Fmod 官網安裝 Unity 認證完成(Unity Verified)的 Fmod Studio 應用軟體、以及要被載入 Unity 的Unitypackage。本文撰寫時,測試成功的版本為 Fmod Studio 2.0010 與fmodstudio20010.unitypackage,兩者版本需一致。現有直接從 Unity 的 Asset Store 導入 Fmod 的方式之版本,似乎仍有版本不相容的問題。 </li></ul><ul><li>正常的情況下,Fmod 的檔案資料夾中的 Build 目錄中會有 bank 檔案,同一份檔案還會被複製到 Unity 檔案資料夾的 Assets / StreamingAssets 資料夾下。然而,使用 Unity Asset Store 載入的 Fmod,目前仍會有找不到 Fmod 的 Bank 的問題。</li></ul><ul><li>此外,在 Unity 執行遊戲時,若出現 訊息顯示 sample rate 必須為 44100Hz 的錯誤訊息,則可以直接在 Unity / FMOD / Edit Setting 的 inspector 下拉選單中的 Play in Edit Setting 修改取樣頻率為 44100Hz 即可。</li></ul><ul><li>若在 Unity 中有找不到 FMOD 的 Event 的錯誤訊息,則需要刪除 Unity 專案資料夾底下的 Assets /StreamingAssets 整的檔案夾,並刪除 FMOD 專案資料夾底下的 Build 資料夾,此錯誤訊息是因為軟體版本有更新所造成。</li></ul><ul><li>若使用 [FMODUnity.EventRef] 的用法來簡化 Event Path,也可能造成相同問題,此時則必須手動至掛載該程式碼的物件之 inspector 中, 點選放大鏡 icon 去從下拉式選單來選擇想要播放的聲音檔案。</li></ul><ul><li>執行 3D 聲音時,main camera 必須掛上 FMOD listener 元件。</li></ul><ul><li>Unity 2019 或 2020 在 import package 的選項中,沒有 standards assets,而必須自己至 asset store 下載安裝與載入,載入完成後會出現在 project window 的 assets 目錄下,然而同時也會出現錯誤訊息,需要在錯誤訊息 "<span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #29303b;">GUIText is obsolete" 點兩下,進入 visual studio 進行下列些改:GuiText 改成 Text,並多加上一行指令,如下圖所示:</span></li></ul></div><div><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #29303b;"><br /></span></div><div><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #29303b;">至 asset store 下載 standard assets:</span></div><div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvYbuabs0M5yMJ3X6nO2w1y6_JbenEHHN9U-xZ4AV18u2ef0ja9xMZrNePW1fYLNNSp-kSUhkX23_Yn3NQCIYE8GCjo1CHbeFaeJJlAWln-vbW2W1I2jdmi6BxOajDFB-W5j-Yk2JMGaeP/s1238/Screen+Shot+2020-12-19+at+2.55.23+AM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="638" data-original-width="1238" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgvYbuabs0M5yMJ3X6nO2w1y6_JbenEHHN9U-xZ4AV18u2ef0ja9xMZrNePW1fYLNNSp-kSUhkX23_Yn3NQCIYE8GCjo1CHbeFaeJJlAWln-vbW2W1I2jdmi6BxOajDFB-W5j-Yk2JMGaeP/w479-h248/Screen+Shot+2020-12-19+at+2.55.23+AM.png" width="479" /></a></div><br /><span face="sf pro text, -apple-system, system-ui, Roboto, segoe ui, Helvetica, Arial, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol" style="color: #29303b;"><span style="background-color: white;">從 console 的錯誤訊息</span></span> "<span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #29303b;">GUIText is obsolete" 點兩下</span><span face=""sf pro text", -apple-system, system-ui, Roboto, "segoe ui", Helvetica, Arial, sans-serif, "apple color emoji", "segoe ui emoji", "segoe ui symbol"" style="background-color: white; color: #29303b;">修改程式碼:</span></div><div><span face="sf pro text, -apple-system, system-ui, Roboto, segoe ui, Helvetica, Arial, sans-serif, apple color emoji, segoe ui emoji, segoe ui symbol" style="color: #29303b;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4Vm1Hw-OOLbwrq5mQ0m-2E8KvF6zekE2ckArBstw6sgwqBn5gn4fSG80JoTNGR4i8HLaIE6nv1_8Accx5GiV6aIxlyvl_QpyjRo0U85dWLN3E88BpRNCyIyEzzVNFpgJvuSRWYtIkrUV2/s1106/Screen+Shot+2020-12-19+at+2.56.54+AM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="540" data-original-width="1106" height="269" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4Vm1Hw-OOLbwrq5mQ0m-2E8KvF6zekE2ckArBstw6sgwqBn5gn4fSG80JoTNGR4i8HLaIE6nv1_8Accx5GiV6aIxlyvl_QpyjRo0U85dWLN3E88BpRNCyIyEzzVNFpgJvuSRWYtIkrUV2/w553-h269/Screen+Shot+2020-12-19+at+2.56.54+AM.png" width="553" /></a></div><br /><span style="background-color: white;">完成修改後就可以使用 standard assets。</span></span></div>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-21983741161041023042021-03-07T09:43:00.229+08:002021-05-04T13:46:53.688+08:00adaptive music & game audio 筆記 5 - 「水平重排序」技巧簡介<p>Horizontal Resequencing (水平重排序)是一種互動音樂的技巧,音樂依照遊戲玩家的行動,以動態的方式串接在一起,當音樂在遊戲進行中播放時,可能到一個需要下決定的點,依照玩家的行動,而音樂則可能進入新的段落或繼續重複原本的段落。Horizontal Resequencing 技巧則是用來處理這種分支點的技巧。</p><p>完整的音樂會有開頭、中間、結尾,需要時間來完成。Horizontal Resequencing 常用於前一段音樂結束、後一段音樂開始的地方,因此為了呈現音樂的完整性,因此 Horizontal Resequencing 比較適合超切換點之間超過 20 秒以上,亦即玩家不需在不同的遊戲狀態下快速切換時,因為若是快速切換遊戲狀態與音樂,則音樂的核心主題或樂思將無法清楚被呈現。此種切換音樂的方式可分為三類:</p><p>(1) Crossfading (淡入淡出):</p><p> 1. 同步的淡入淡出(synchronized crossfading):</p><p>前後兩段音樂於重疊之處採用相同的速度、節奏,甚至採用相同的和聲進行,以減少切換音樂上的突兀。此種作法的缺點在無法改變成體的速度。</p><p> 2. 非同步的淡入淡出(non-synchronized corssfading):兩段音樂重疊之處進行淡入淡出,但兩段音樂節奏不同、和聲也可能相互衝突。此種作法使音樂切換較難以順暢。</p><p>(2) Transition (過渡段): 使用過渡段進行兩段音樂之間的銜接。過渡段可以任何長度,但以不要超過 10 秒為佳。可用一段音效作為作為過渡段(例如:Final Fantasy XIII 使用音效片段作為過渡。)好的過渡段可以連接兩段使用不同和聲架構、速度的音樂。差異較大的兩段音樂之過渡段其長度不能太短,30 秒以上的過度段效果最佳。</p><p>(3) Branching (分支): 前段音樂的樂句結束後,才接到下一段的音樂,為最具音樂性的作法,因為此種作法不會將旋律或和聲截斷。此種作法比較適合樂句長度較短的音樂,以不超過 10 秒為佳,古典風格的音樂通常句子長於 10 秒,搖滾或科技 (Techno) 旋律則通常較短,因此比較適合作為此種技巧所使用的音樂風格。Branching 技巧也適合於當作曲者需要一段乾淨的過渡段來執行互動音樂,或希望使用和聲與速度來改變情緒時。此外,使用隨機播放清單(random playlists)使作曲家可以在有限的樂句中增加變化性。Branching 的技巧有助於克服音樂重複的問題,故常用於休閒及手持遊戲,因為此類遊戲平台可用於存放音樂的記憶體通常較小。</p><p>關於 Horizontal Resequencing 的例子說明如下:</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/X7wXRY3ocL4" width="320" youtube-src-id="X7wXRY3ocL4"></iframe></div><br /><p><br /></p><p><br /></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-62103340148934489942021-02-28T23:49:00.000+08:002021-02-28T23:49:01.949+08:00adaptive music & game audio 筆記 4:視頻遊戲配樂常用的三種技巧之定義與優缺點說明<p>視頻遊戲的配樂技巧,根據研究遊戲音樂的學者 Michael Sweet 在 <i>Writing Interactive Music for Video Games</i> 一書中的整理歸納 ,筆者節錄簡述如下:</p><p>常見的遊戲配樂之技巧或類型有三:</p><p>(一)非互動式的遊戲音樂:</p><p>定義:使用線性方式重複播放一段音樂,當一個遊戲層級開始時,重複的音樂片段(music loop)就開始播放,當一個遊戲層級結束時,音樂就停止播放。</p><p>優點:(1) 容易作曲與執行。(2)製作時間較少(3)相對於互動遊戲配樂而言,非互動式的遊戲配樂更省製作費。</p><p>缺點:(1)缺乏變化、音樂重複性高。(2)音樂上使用相同的開頭、中間、與結尾,使得重複的音樂片段之起訖點(loop points)更容易被聽者注意到而使其聽起來重複性高。</p><p>(二)水平重排序(Horizontal Resequencing)</p><p>定義:一種互動音樂作曲的手法,當音樂到達句子的結尾時,可從一段音樂進入到另一段音樂。在遊戲進行當中,音樂可到達一個關鍵點,在這個關鍵點之後,音樂可以進入一個新的段落,或繼續重複前一個段落,其選擇是依照玩家的遊戲狀態而定。</p><p>優點:(1) 配樂便於根據遊戲事件,從一種情感的文本切換到另一種情感的文本。(2)可提供清楚的音樂過渡段。</p><p>缺點:(1) 為了結束前段音樂的想法或樂句,使得配合遊戲所需的音樂變化,有時並無法立即達成。(2) 當遊戲狀況多次快速往來於兩種音樂氛圍時,會使得過渡段聽起來比較明顯。</p><p>*「水平重排序」的技巧包含了「分支」(branching)、「淡入」(crossfading)、「過渡」(transition) 三種。(待續)</p><p><br /></p><p>(三)垂直重混音(Vertical Remixing)</p><p>定義:一種互動音樂作曲的手法,不同層次的音樂內容可垂至疊置或被刪除,以製造不同程度的張力與情緒。此種方法常用當作曲家需要讓音樂在不同張力之間快速多次轉換時,且根據遊戲性的需求較不需要變換和聲時。</p><p>優點:藉由疊加或刪減可以快速改變同一首曲子的整體情緒</p><p>缺點: (1) 由於此種技巧的執行上,和聲設計上是持續循環重播的,因此並不允許音樂語言基於遊戲事件的需求而進行較劇烈的改變。(2) 此種技巧的執行上,速度是固定的,因此音樂並無法根據遊戲的狀態去增加或放慢音樂速度。</p><p>*心得:vertical mixing 常用在和聲變化少(持續循環播放重複的和聲進行)、且速度固定的音樂中。我認為因為和聲變化太快時,疊加的時間切入點就沒辦法那麼自由隨時可以疊加進去,而是需要挑特定的點才能疊進去(例如在一個和聲循環的終點或終止式之後才能疊入其他音樂層,一個和聲循環通常會包含主和弦 - 中介和弦 - 屬和弦 - 主和弦。則音樂的疊加可能會需要挑最開頭的主和弦進入時、或前面音樂到達終止式之後才疊入,但這樣就會沒辦法立即自由地搭配遊戲玩家的遊戲狀態), 所以 vertical mixing 可能多數情況都只套用在單一和弦的音樂中來執行,效果較為順暢又能保持立即性。</p><p><br /></p><p>可在參考 youtube 影片的說明,影片中也包含自適性音樂在 Fmod 中執行的狀態:</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/WLMBnoACpj8" width="320" youtube-src-id="WLMBnoACpj8"></iframe></div><br /><p><br /></p><p><br /></p><p><br /></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-52951671516613832982020-12-31T11:21:00.043+08:002021-06-01T01:13:35.156+08:00「電子音樂與聲音設計」新課程於 2021 年 2 月份開課<p></p><div class="separator" style="clear: both; text-align: justify;">台北科技大學互動設計系「互動音樂與多媒體實驗室」碩班 2021 年新開課程「電子音樂與聲音設計」將於 2020 年 2 月份開課。課程內容將由電子音樂、數位音樂相關軟體之實務應用,進而導入「自適性音樂」與遊戲設計的整合運用,使用到的軟體包括:Ableton Live (含 Max for Live 相關聲音設計之功能應用)、配合自動編曲軟體之輔助,進而導入自適性音樂(Adaptive Music)之概念介紹、自適音樂軟體 FMOD 與遊戲引擎 Unity 之結合應用,並建立基本的 Adaptive Music 雛形,以作為進一步以互動裝置、遊戲設計等之互動音樂設計依據。</div><div class="separator" style="clear: both; text-align: justify;"><br /></div><div class="separator" style="clear: both; text-align: justify;">PS:本課程歡迎跨系選修、跨校選修(非北科之他校學生,大學部、碩士生可以校際選修進行修讀)、隨班附讀(非學生身分者,可透過北科註冊組繳費後進行修讀)。</div><div class="separator" style="clear: both; text-align: justify;"><br /></div><div class="separator" style="clear: both; text-align: justify;">校際選修程序:</div><div class="separator" style="clear: both; text-align: justify;"><a href="https://oaa.ntut.edu.tw/p/412-1008-12844.php?Lang=zh-tw">https://oaa.ntut.edu.tw/p/412-1008-12844.php?Lang=zh-tw</a></div><div class="separator" style="clear: both; text-align: justify;"><br /></div><div class="separator" style="clear: both; text-align: justify;">2021 年課程大綱:</div><div class="separator" style="clear: both; text-align: justify;"><a href="https://aps.ntut.edu.tw/course/tw/ShowSyllabus.jsp?snum=285779&code=11533">https://aps.ntut.edu.tw/course/tw/ShowSyllabus.jsp?snum=285779&code=11533</a></div><div class="separator" style="clear: both; text-align: justify;"><br /></div><div class="separator" style="clear: both; text-align: justify;">北科課程查詢系統:</div><div class="separator" style="clear: both; text-align: justify;"><a href="https://aps.ntut.edu.tw/course/tw/QueryCurrPage.jsp">https://aps.ntut.edu.tw/course/tw/QueryCurrPage.jsp</a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwOLgiIZ06-DkRO1OeF6o6AH3xyijbfwH-_SzZyR4-8VbUntXA1afQdLS_trozl3QKsOIcsqbLuw389jX93phCaWYt9dnuR1VXE5Qr62Nhz7oFKOoz82cX9RLyHmvlK-DJjw3_gPBrH0Ge/s900/Copy+of+Electro+Party+Flyer+Template+Design+-+Made+with+PosterMyWall.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="900" data-original-width="695" height="633" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwOLgiIZ06-DkRO1OeF6o6AH3xyijbfwH-_SzZyR4-8VbUntXA1afQdLS_trozl3QKsOIcsqbLuw389jX93phCaWYt9dnuR1VXE5Qr62Nhz7oFKOoz82cX9RLyHmvlK-DJjw3_gPBrH0Ge/w489-h633/Copy+of+Electro+Party+Flyer+Template+Design+-+Made+with+PosterMyWall.jpg" width="489" /></a></div><div><br /></div><br /><div style="text-align: center;"> Adaptive Music 概念簡介</div><p></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="397" src="https://www.youtube.com/embed/b0gvM4q2hdI" width="477" youtube-src-id="b0gvM4q2hdI"></iframe></div><br /><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="397" src="https://www.youtube.com/embed/p-FLWabby4Y" width="477" youtube-src-id="p-FLWabby4Y"></iframe></div><br /><p>期中作業:期末專案企劃、現有進度展示報告</p><p>期末作業範例:</p><p>選擇 1: 遊戲配樂 DEMO </p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/v4RTFIXJito" width="320" youtube-src-id="v4RTFIXJito"></iframe></div><div><br /></div><div>選擇 2:互動音樂&簡易氛圍切換雛形 DEMO</div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGeCjX3RkkS2Z3oqntWkDTVgHwg0WN7adZqV6zyC8enU8n7kvby1_zKvfXrRw_qfC8Otg-qza0bB7zHV9chLuyfAX0WrD4AFDCKSuyF1YuMhh583PN1Qyi6pQzUPAeIS2JozxjS2pO2F1P/" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="1217" data-original-width="2048" height="350" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGeCjX3RkkS2Z3oqntWkDTVgHwg0WN7adZqV6zyC8enU8n7kvby1_zKvfXrRw_qfC8Otg-qza0bB7zHV9chLuyfAX0WrD4AFDCKSuyF1YuMhh583PN1Qyi6pQzUPAeIS2JozxjS2pO2F1P/w590-h350/adaptive.jpg" width="590" /></a></div><br /><br /><p>選擇 3: 結合影像之音樂 DEMO (例如自行拍攝的 MV、新媒體音像或表演的之影片配樂 、電影片段的配樂、靜圖轉動畫之影片配樂等)</p><p>新媒體作品影音範例:</p><p><a href="https://www.jingwangmusic.com/compositions">https://www.jingwangmusic.com/compositions</a></p><p><a href="http://cwcheng2009.blogspot.com/p/blog-page_4.html">http://cwcheng2009.blogspot.com/p/blog-page_4.html</a></p><p>靜圖轉動畫之影片配樂範例:</p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/3tRPpMQL1KE" width="320" youtube-src-id="3tRPpMQL1KE"></iframe></div><br /><p><br /></p><p> </p><p><br /></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-46965875263229059972020-11-05T01:32:00.002+08:002020-11-27T00:27:48.540+08:00新作「夢中之夢」將發表於清華大學「聲、影、當代」音樂會中(11/28)<p></p><div class="separator" style="clear: both; text-align: justify;">感謝清大林怡君老師的邀請、以及薩克斯風演奏家顧鈞豪老師的支持,我的新作「夢中之夢」(給薩克斯風與互動音樂系統)將發表於清華大學「聲、影、當代」音樂會中(11/28),請請期待!</div><br /> <div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge6icPCDRE2M3hvHTdxq4NMAvpT8MRVQ0RJXDQn-bYe25Hx2gA5laWSkfOH1EM3RRN1Q1OvudbonzdjGuxCKTFyD2-so8jAGEaVgG8cCeaoDifSL51mHV2ICAUrKj_XY7lGHvjyeCiqFca/s1897/poster_A4.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1897" data-original-width="1349" height="761" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEge6icPCDRE2M3hvHTdxq4NMAvpT8MRVQ0RJXDQn-bYe25Hx2gA5laWSkfOH1EM3RRN1Q1OvudbonzdjGuxCKTFyD2-so8jAGEaVgG8cCeaoDifSL51mHV2ICAUrKj_XY7lGHvjyeCiqFca/w542-h761/poster_A4.jpg" width="542" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcX1cugzenibK2OnjA6OA9FBCxwxJjvs5xFRW0ujumBj5P5h-Ejn3n8mHdkZ3M56uD_PbxzQvr7dIU8f1UgLLBeghbavcSvCBazKO-HnyVbVMk3xMuyLTBmtpEuBr-tdtDgZvUhQNePsYF/s1762/Screen+Shot+2020-10-04+at+3.53.32+AM.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1574" data-original-width="1762" height="483" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcX1cugzenibK2OnjA6OA9FBCxwxJjvs5xFRW0ujumBj5P5h-Ejn3n8mHdkZ3M56uD_PbxzQvr7dIU8f1UgLLBeghbavcSvCBazKO-HnyVbVMk3xMuyLTBmtpEuBr-tdtDgZvUhQNePsYF/w541-h483/Screen+Shot+2020-10-04+at+3.53.32+AM.png" width="541" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><br /></div><br /><p></p>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-68750629616151410212020-10-05T01:51:00.001+08:002020-10-05T01:54:24.960+08:00我的作曲學生獲得義大利國際徵曲比賽第一名<div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><span style="font-family: inherit;"><a class="oajrlxb2 g5ia77u1 qu0x051f esr5mh6w e9989ue4 r7d6kgcz rq0escxv nhd2j8a9 nc684nl6 p7hjln8o kvgmc6g5 cxmmr5t8 oygrvhab hcukyx3x jb3vyjys rz4wbd8a qt6c0cv9 a8nywdso i1ao9s8h esuyzwwr f1sip0of lzcic4wl py34i1dx gpro0wi8" href="https://l.facebook.com/l.php?u=https%3A%2F%2Fwww.diaphonia.net%2Fen%2Fcall-for-score%2Fsoloclarinet.html%3Ffbclid%3DIwAR2vcweYOV67M1klciUo7a_RT01Ku7VwDNi7dD7cnueAED2YeKMV-mO8YRc&h=AT3mTJCXxcNdwANp1IzmuGvgMwkskl-HoA_mAY6RKDtFASHdBU200DlF1TtvBODbRzktHUTYiTNe3fur1Ey9GfEaONNA9I4r0ADsEJ3FNHh0zjBy-h1Zm3oioK2R-OjtK4Mr_Qs54jEnz3WfNnoRRxg&__tn__=-UK-R&c[0]=AT2ZWhnBHvTOyW2iYu43c5imZfXmPYJf8ZRMGgzC1KUDY0Uf5hBjnhyNnJtTVSH5h6KYX7nvZy9BHP6L_WvSKCE8CBdrSY74pwTwZ1Nfjo_XInncjMmQiUF3RH6RvNFVfLtngLgIqNl9TLtwHEuUoDBZIhz2tsh1rsTr6vBYuioV5G7sbg-lFAXrV_EZScA" rel="nofollow noopener" role="link" style="-webkit-tap-highlight-color: transparent; background-color: transparent; border-color: initial; border-style: initial; border-width: 0px; box-sizing: border-box; cursor: pointer; display: inline; font-family: inherit; list-style: none; margin: 0px; outline: none; padding: 0px; text-align: inherit; touch-action: manipulation;" tabindex="0" target="_blank">https://www.diaphonia.net/....../cal....../soloclarinet.html</a></span></div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;">很高興我的作曲學生熊仁岳同學 (木笛演奏主修)參加義大利國際性徵曲比賽榮獲第一名。獲得第一名者將由義大利的樂譜出版社 Diaphonia Edizioni 出版樂譜,並且替作曲家安排兩次演出、於 2021 年安排錄音與數位CD 出版。非常恭喜他!</div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><br /></div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;">這是他繼前次參加國立台灣交響樂團管弦樂作曲比賽獲得第二名之後,獲得的另一個重要殊榮。之前他的其他作品也獲選於「北京國際電子音樂節」、「衛武營國際徵曲」等徵曲活動中獲選演出。身為他的作曲老師的我,也非常欣慰,並為他感到高興!</div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><br /></div><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXm8Isx6G3iUlOnKPCeITcY5CSA4a011UQVeU0_ssjWasGZephvDAY_WBvZAxxETgmS3A4eI0GNttS4AW9G3G8lkB7R2ia3r7kF94LQ_GIwxuc-nvUpfrMSlwCvmPp_SgDuVpVYrFAEO7e/s2048/italy.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1264" data-original-width="2048" height="395" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXm8Isx6G3iUlOnKPCeITcY5CSA4a011UQVeU0_ssjWasGZephvDAY_WBvZAxxETgmS3A4eI0GNttS4AW9G3G8lkB7R2ia3r7kF94LQ_GIwxuc-nvUpfrMSlwCvmPp_SgDuVpVYrFAEO7e/w639-h395/italy.png" width="639" /></a></div><br /><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><br /></div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><br /></div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><br /></div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><br /></div><div dir="auto" style="background-color: white; color: #050505; font-family: system-ui, -apple-system, system-ui, ".SFNSText-Regular", sans-serif; font-size: 15px; white-space: pre-wrap;"><br /></div>Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-17811849783627285742020-03-20T01:10:00.001+08:002020-03-20T01:10:50.190+08:00五重奏作品 Snow on the River 參加 Random Access Music 徵曲獲「榮譽提名」<div class="separator" style="clear: both; text-align: justify;">
我的五重奏作品 Snow on the River (給長笛、豎笛、鋼琴、小提琴、大提琴)參加 Random Access Music 徵曲比賽,獲得榮譽提名。此次徵曲只選出一位作曲家的作品能獲得演出,雖然沒被選上,但被列在榮譽提名的名單內(只有兩位作曲家獲得榮譽提名)。</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
<a href="https://www.ram-nyc.org/post/2020-call-for-scores-winner-announced?fbclid=IwAR2lWItdI7LKhB3kMBWYvxPiAQloHb9vpr3z_Xb9-sZVp9q0FZcnlq2uOn0">https://www.ram-nyc.org/post/2020-call-for-scores-winner-announced?fbclid=IwAR2lWItdI7LKhB3kMBWYvxPiAQloHb9vpr3z_Xb9-sZVp9q0FZcnlq2uOn0</a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8uf8Lc4AXZ6ZmXn0mBsniGTJmmRKmfjtlIBRKpIGV7ElgytmVSSk1EMYscSXp4VUPkg8JUyvmB3VK4YyZ44vpvAW7hisy9lCADXprv9knctg00jgKpTPEdx1gu4fExWyfWnFBdMR6TYrW/s1600/Screen+Shot+2020-03-20+at+1.00.42+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1493" data-original-width="1510" height="632" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8uf8Lc4AXZ6ZmXn0mBsniGTJmmRKmfjtlIBRKpIGV7ElgytmVSSk1EMYscSXp4VUPkg8JUyvmB3VK4YyZ44vpvAW7hisy9lCADXprv9knctg00jgKpTPEdx1gu4fExWyfWnFBdMR6TYrW/s640/Screen+Shot+2020-03-20+at+1.00.42+AM.png" width="640" /></a></div>
<br />Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-10602139555446929262020-01-01T10:06:00.000+08:002020-01-02T02:31:38.084+08:00adaptive music & game audio 筆記 3: Unity 中使用 AudioSource 播放 OneShot 聲音<div style="text-align: justify;">
<span style="font-family: inherit;">OneShot Sound 是指只觸發一次的聲音或音樂,是相對於不段循環播放的背景音樂而言。下面這個程式碼主要是用在遊戲場景中,主要是利用聲音表現主角踏進一個池塘區域所濺起的水聲。</span>下面這個程式碼(可命名為 PlayerAudio)是利用 add component 加入並依附在遊戲的主角身上來運行。說明如下:</div>
<div style="text-align: justify;">
<span style="font-family: inherit;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: inherit;">1. public AudioClip splashSound 用來宣告一個叫做 splashSound 的 AudioClip 類別成員。AudioClip 是 Unity 中用來存放聲音檔案的類別 (a container for audio data )。</span></div>
<div style="text-align: justify;">
<span style="font-family: inherit;"><br /></span></div>
<div style="text-align: justify;">
2. public AudioSource audioS 用來宣告一個叫做 audioS 的 AudioSource 類別成員。AudioSource 是一套處理聲音播放相關機制的類別,猶如一個多功能或提供多種播放模式的播放器。</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
3. OnTriggerEnter 也是 Unity 中的方法,主要處理某個物件進入到某個物件中的觸發事件之狀況(例如:主角進入到水池中)。利用 CompareTag ("Water" ) 用來判別是否進入了一個標被籤定為 Water 的區域,如果是,則利用 audioS.PlayOneShot (splashSound) 的方法來播放聲音。</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
程式碼完成後,在主角的 Inspector 中需要利用 Add Component 新增一個 AudioSource 物件,並將此物件拖曳到 Inspector 中的程式碼元件中,顯示 audioS 的地方,由於程式碼中使用 public 的方式來宣告 audioS,所以此程式碼元件就會在 inspector 中顯示一個 audioS 的項目。藉由將 AudioSource 物件拖曳至 audioS 的項目,可讓 AudioSource 物件跟所宣告的 audioS 相連結。</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
在 Inspector 中的程式碼元件中,另外需拖曳一個聲音檔案至 inspector 的 PlayAudio 元件所顯示之 splashSound 項目,則完成了聲音播放的相關設定,使得主角進入標籤為 water 的區域中,則立即播放所預定的水花聲音。同理,使用 OnTriggerExit(Collider other) 讓主角離開 water 區域時,也再播放一次預定的水花聲音。</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhGFhXygCHiflvR6t-RsnWwGg5uFO7bOR63DP7D0y8Z16pGG22lJR9aG2xnsh4Zh0JQBDaNzjNBFTFQ3d-beST-pFGeAmwX0z8b-psgx5rNeMFlhiP03ViGLZVkv-s9rkc0EqNRBSriuc5/s1600/Screen+Shot+2020-01-02+at+1.05.56+AM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="710" data-original-width="868" height="522" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhGFhXygCHiflvR6t-RsnWwGg5uFO7bOR63DP7D0y8Z16pGG22lJR9aG2xnsh4Zh0JQBDaNzjNBFTFQ3d-beST-pFGeAmwX0z8b-psgx5rNeMFlhiP03ViGLZVkv-s9rkc0EqNRBSriuc5/s640/Screen+Shot+2020-01-02+at+1.05.56+AM.png" width="640" /></a></div>
<br />
<br />
其他關於 OnTriggerEnter 與 OnCollision 的區別,可以參考這裡:<br />
<a href="https://blog.csdn.net/u014581901/article/details/51582704">https://blog.csdn.net/u014581901/article/details/51582704</a><br />
<br />
若要了解 Tag 標籤的設定方法、以及 OnTriggerEnter、OnCollision 的區別,可以參考下面兩個影片。<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/F4TC7H6trLo/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/F4TC7H6trLo?feature=player_embedded" width="320"></iframe></div>
<br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/WFkbqdo2OI4/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/WFkbqdo2OI4?feature=player_embedded" width="320"></iframe></div>
<br />Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0tag:blogger.com,1999:blog-4576376146215690860.post-35231649338140162872019-11-25T22:48:00.001+08:002022-01-24T00:23:12.306+08:00我的新書出版 - 由音色塑形探討我近期之音樂創作 我的新書出版了,「由音色塑形探套我近期之音樂創作」是一本探討現代音樂創作中,以音色、音響為出發點的作曲技巧與音色美學探討的書,以及我自己的作品中實踐這些音色、音響的美學概念之方法與實例之回顧,其中也包含來自「頻譜主義」的音色音響的美學思維,並加入互動電子音樂在音色設計之美學思維。在書中,我試圖用比較系統性、客觀的方式去陳述這些概念,這些美學概念與方法其實是經過自身多年創作經驗、聆聽經驗與研究國外文獻所得到的一些結論。換句話說,與其說這本書是單純的個人作品的回顧,不如說這本書是圍繞在一些關鍵性地用音色來處理音樂橫向與縱向結構的美學原則之論述,相信對於現代音樂創作的學習者而言,應該會有一定的助益。讀者若希望聽到書中所提及的作品之演出錄音,也都歡迎來信給我。
本書的出版要非常感謝台北音樂家書房的王老闆的支持,以今日書店經營不易且現代音樂僅是小眾文化的情況下,王老闆還願意投入人力與物力來促成這本關於現代音樂創作的書籍之出版,實在難得。這本書前前後後校訂了兩年,裡頭的圖解都由台北音樂家書房幫我重新繪製,真的讓我非常感謝,也希望藉此對於現代音樂的推展或相關研究,能夠引起一些共鳴。<br />
<br />
<span style="color: blue;">台北音樂家書房之本書連結:</span><br />
<a href="http://www.musiker.com.tw/MusicBook.asp?id=42616">http://www.musiker.com.tw/MusicBook.asp?id=42616</a><br />
<br />
<span style="color: blue;">全書的綱要如下:</span><br />
<br />
第 1 章:緒論<br />
<br />
第 2 章:音色的定義與作用<br />
-2.1 音色之定義與影響音色感受之要素<br />
-2.2 音色在音樂中的作用<br />
<br />
第 3 章:音色的縱向結構<br />
-3.1 音色的縱向結構之類型學<br />
-3.2 音色的縱向解構與橫向延遲<br />
-3.3 縱向異質頻譜型態之轉換<br />
-3.4 縱向異質頻譜型態之「交融」<br />
-3.5 雙重頻譜的交叉合成<br />
-3.6 縱向和聲與音色之關係<br />
<br />
第 4 章:音色的橫向結構<br />
-4.1 音色橫向漸變與音樂結構之關係<br />
└ 4.1.1 多層次網絡的連續性漸變<br />
└ 4.1.2 並列關係中的漸變<br />
-4.2 局部多重變化下「和聲」之漸變與延展<br />
-4.3 「和聲」滯留下的動態音色<br />
-4.4 樂器橫向音色變化與敘事之結合運用<br />
-4.5 聲音瞬間留滯的虛幻時空<br />
-4.6 聲音的橫向解構與時序重組<br />
<br />
第 5 章:結論<br />
<br /> Chien-Wen Chenghttp://www.blogger.com/profile/09194609849730548939noreply@blogger.com0