Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 安卓(Android)游戲開發音效代碼

安卓(Android)游戲開發音效代碼

編輯:關於Android編程

游戲音效就是我們在玩游戲時出現的音樂,這個也是每個游戲必備的一部分,但有是你做游戲的背景音樂有間斷的感覺的話,我們可以用getCurrentPosition()這個方法來判斷一下聲音播放的偏移。其實這個也是非常簡單的。只要我們在代碼當中設置好(初始化聲音)和(加載音效資源)就可以了,別的就和音樂播放器的代碼差不多,像開始,停止。不多說了,我們還是先來看看代碼當中是怎麼實現音效的吧:

1.音效的音量

int streamVolume;

//定義SoundPool 對象 private SoundPool soundPool;
  //定義HASH表 private HashMap soundPoolMap;
  /*Parameters: null
  * Returns: None.
  * Description: 初始化聲音系統
  * Notes: none.
  ***************************************************************/

2.初始化soundPool

public void initSounds() { //初始化soundPool 對象,第一個參數是允許有多少個聲音流同時播放,第2個參數是聲音類型,第三個參數是聲音的品質 soundPool = new SoundPool(100, AudioManager.STREAM_MUSIC, 100);
  //初始化HASH表 soundPoolMap = new HashMap();
  //獲得聲音設備和設備音量 AudioManager mgr = (AudioManager)context.getSystemService(Context.AUDIO_SERVICE);
  streamVolume = mgr.getStreamVolume(AudioManager.STREAM_MUSIC);
  }
  /*************************************************************** * Function: loadSfx();
  * Parameters: null
  * Returns: None.
  * Description: 加載音效資源
  * Notes: none.
  ***************************************************************/

3.加載

public void loadSfx(int raw, int ID) { //把資源中的音效加載到指定的ID(播放的時候就對應到這個ID播放就行了) soundPoolMap.put(ID, soundPool.load(context, raw, ID));
  }
  /*************************************************************** * Function: play();
  * Parameters: sound:要播放的音效的ID, loop:循環次數
  * Returns: None.
  * Description: 播放聲音
  * Notes: none.
  ***************************************************************/
  public void play(int sound, int uLoop) { soundPool.play(soundPoolMap.get(sound), streamVolume, streamVolume, 1, uLoop, 1f); }

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved