close

這篇介紹遊戲的聲音

 

1. Music: 在Sounds選擇Create Sound可以建立聲音檔
而聲音的格式可以用Mp3或是Ogg Vorbis等
開啟Room 然後在tab Settings裡按下Creation code,
這邊的程式碼只會在room或instance建立後執行一次

! : 會傳回相反的true或false判斷
audio_is_playing(sound): 會根據選取的sound音樂是否正在執行回傳true或false
audio_play_sound(sound, loop, priority): 會撥放選取的sound音樂, loop是決定優先權,
優先權越高就會關掉低優先權的, priority是代表是否要循環撥放

Sound Effects: Object的Event中可以在tab main1添加Play Sound Action

01.png

 

2. Advanced Effects:
audio_emitter_create(): 在創造時會回傳一個唯一的ID, 並且在其他的function內可使用
audio_play_sound_on(emit, sound, loop, priority): 撥放指定emit的音樂
emit代表目標發射器, sound是指定的音樂,loop是決定優先權,
優先權越高就會關掉低優先權的, priority是代表是否要循環撥放

Changing Pitch:
audio_emitter_pitch(emit, pitch) : 用來改變指定emit所有撥出聲音的音高
emit代表指定的發射器,
pitch是音高, 1是基本值, 可以利用加減來調整, 超過2時會有破音風險
audio_emitter_free(emit) : 用來釋放指定emit的記憶體資源

02.png

 

3. 問題集
Q1: 哪種格式的音樂是可以用在遊戲中的?
A1: Ogg Vorbis或MP3是最好的, WAV可以撥但是不推薦

Q2: 為什麼在room一開始時要先確認聲音有沒有撥放?
A2: 避免每次重啟房間時音樂就重新啟動

Q3: 為什麼要使用emitter呢?
A3: 當你需要撥放一個以上不同的音高, 聲量或是位置的聲音就需要.

Q4: pitch在聲音中是如何使用的?
A4: pitch是一個乘數, 基本是1, 越高則音高越高(ex: 1.2), 反之亦然

Q5: 為甚麼我們需要銷毀發射器?
A5: 為了避免記憶體leak導致當機

03.png  

arrow
arrow
    文章標籤
    GameMaker Sound
    全站熱搜
    創作者介紹
    創作者 RX1226 的頭像
    RX1226

    給你魚竿

    RX1226 發表在 痞客邦 留言(0) 人氣()