1 つのユニットに 3 つのオーディオ ステージがある Android ゲームを作成します。
- 打撃を受けます
- 攻撃
- 死
そこで、Unit オブジェクトに次のコードを追加しました。
MediaPlayer mMediaPlayerGetHit = null;
MediaPlayer mMediaPlayerDead = null;
MediaPlayer mMediaPlayerAttack = null;
でconstructor
:
mMediaPlayerAttack=MediaPlayer.create(context,R.raw.fly_monster_attack1);
mMediaPlayerDead=MediaPlayer.create(context,R.raw.fly_monster_death1);
mMediaPlayerGetHit=MediaPlayer.create(context,R.raw.fly_monster_gethit1);
mMediaPlayerAttack.setOnPreparedListener(this);
mMediaPlayerDead.setOnPreparedListener(this);
mMediaPlayerGetHit.setOnPreparedListener(this);
....
今は雑然としていますが、
うーん、ユニット状態ごとに 1 つずつ、3 つのプレイヤー オブジェクトです。
私はその方法が間違っていると確信しておりMediaPlayer
、ユニットの状態に関して毎回ソースを変更する必要があります。
しかし、ここにパフォーマンスの問題があります:
私MediaPlayer
がソースを取ったとしましょうattack
。
その後、 に切り替えget hit
、もう一度に切り替えattack
ます。
たぶん、どういうわけかMediaPlayer
withのインスタンスを保存して再利用する必要がありますか?attack
何百回も私の貧しい人を切り替える良い方法だとは思いませんMediaPlayer
。
何か案は?
ありがとうございました、