zoukankan      html  css  js  c++  java
  • Android平台游戏声音播放实践

    大部分游戏都有音效,不然游戏乐趣会降低很多,而几乎所有音效都是重复播放的。
    下面的代码只加载一次音频文件,但是却可以被多次使用。请将音频文件放置在/res/raw路径中。

    public static final int SOUND_EXPLOSION = 1;
    private SoundPool soundPool;
    private HashMap<Integer, Integer>soundPoolMap;

    private void initSounds() {
        soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 100);
        soundPoolMap = new HashMap<Integer,Integer>();
        soundPoolMap.put(SOUND_EXPLOSION, soundPool.load(getContext(),R.raw.explosion, 1));
    }

    public void playSound(int sound) {
       
        AudioManagermgr =(AudioManager)getContext().getSystemService(Context.AUDIO_SERVICE);
        floatstreamVolumeCurrent =mgr.getStreamVolume(AudioManager.STREAM_MUSIC);
        floatstreamVolumeMax =mgr.getStreamMaxVolume(AudioManager.STREAM_MUSIC);   
        float volume= streamVolumeCurrent / streamVolumeMax;

       
       soundPool.play(soundPoolMap.get(sound), volume, volume, 1, 0,1f);    
    }

     

    public void explode() {
       playSound(SOUND_EXPLOSION);
    }

  • 相关阅读:
    rsync 服务器配置过程
    百度基础技术总结
    利用cobbler无人值守批量安装centos
    安装批量装机工具cobbler过程
    面试题
    JS作用域
    原型链
    ES6优缺点
    PostCSS理解与运用
    置换元素和非置换元素
  • 原文地址:https://www.cnblogs.com/ganzhijie/p/1804290.html
Copyright © 2011-2022 走看看