2012年3月1日星期四

KAG教學---音量與方向.淡出與淡入,播放音效(2)

既然有辨法在遊戲裡調整背景音樂的音量,那麼音量應該也可以調整一下音量吧?>( ゚ω゚ s)

(k ゚∀゚)<當然可以,我們可以用[seopt]來調整音量,[seopt]有兩個屬性來調整音量,分別是volume和gvolume,兩個都是調整音效的音量百分率,數值為0至100,100是正常音量,如果忽略的話代表音量不變。

為什麼有兩個相同功能的屬性?>( ゚ω゚ s)

(k ゚∀゚)<volume是指個別的音量,由於每個音效可以有不同的緩衝區,我們可以用buf屬性指定個別的音效來調整音量,而gvolume是全域音量,全域音量是遊戲裡的整體音量,全域音量會記錄於系統變數裡,所以通常用於音量設定介面上的調整音量功能。

(k ゚∀゚)<而實際播放的音量是volume和gvolume兩個音量的百分率相乘,看看以下的範例。

[playse buf=0 storage="se1"]
[seopt buf=0 volume=50 gvolume=50]
播放SE1,音量是原本的25%

(k ゚∀゚)<在上述的範例裡,實際播放的音量是0.5x0.5=0.25,音量是原本的25%。

(k ゚∀゚)<除此之外,我們還可以使用[seopt]的pan屬性來調整音量的左右平衡。

什麼是左右平衡?>( ゚ω゚ s)

(k ゚∀゚)<即是左邊音量和右邊音量的比重可以調整,pan的值是由-100至100,-100代表只有左邊有聲音,100代表只有右邊有聲音,0代表中央。

(k ゚∀゚)<看看以下的範例。

[playse buf=0 storage="se1"]
[seopt buf=0 pan=100 gvolume=100]
播放SE1,只有右邊有聲音[p][cm]
[seopt buf=0 pan=-100 gvolume=100]
播放SE1,只有左邊有聲音[p][cm]
[seopt buf=0 pan=0 gvolume=100]
播放SE1,返回正常

這麼我豈不是可以用來調整聲音的方向?>( ゚ω゚ s)

(k ゚∀゚)<嗯,我們的確可以用[seopt]來做到聲音好像從左邊或右邊來的,不過如果是其他更仔細的方向的話,就應該由音效本身去調整。

既然有[seopt],是不是也有[fadese]?我記得播放背景音樂裡有這種東西。>( ゚ω゚ s)

(k ゚∀゚)<的確是有[fadese]的,[fadese]同樣是調整音量,而且有淡入的效果,[fadese]有三個屬性,分別是buf、volume和time,buf是設定哪個緩衝區,time是設定淡入的所需時間,以微秒(ms)為單位,volume是調整背景音樂的音量百分率,數值為0至100,100是正常音量,如果忽略的話代表音量不變,要留意[fadese]是不能調整全域音量和調整音量的左右平衡,想調整的話就要用[seopt]。

(k ゚∀゚)<看看以下的範例。

[seopt buf=0 gvolume=100]
[playse buf=0 storage="se1"]
播放SE1,音量是100%
[fadese buf=0 volume=50 time=3000]
音量是原本的50%

(k ゚∀゚)<在上述的範例裡, 音效花了3秒鐘把音量由100%減至50%。

那麼有沒有辦法去暫停音效,就好像背景音樂一樣?>( ゚ω゚ s)

(k ゚∀゚)<沒有,這是背景音樂和音效其中一個差別,我們是沒法暫停音效的,只可以停止音效。

(k ゚∀゚)<今次也差不多了,下一次再見吧。

沒有留言:

發佈留言