0

Epic Flash ゲーム デザイン コンテストhttp://www.youtube.com/watch?v=bpFBraUbHyo&list=UUfkxvxrvpNxXvdKusYS0NfQ&index=1用にフラッシュ AS3 で RTS ゲームを作成しています。

すべてのサウンドを管理するクラスを作成するのが非常に面倒であることを除いて、ほぼ完了です。基本的に、バッファがオーバーフローする前に、AS3 で使用できる SoundChannel は 32 しかありません。しかし、残念なことに、私の RTS は同時に戦っている数十のユニットを処理し、各ユニット、特にライフル兵は一度に複数のショットを発射します。

それぞれの効果音を鳴らすとバッファがオーバーフローしてしまい、鳴らなくてもうるさくてゴチャゴチャしてしまいます。問題は、市場で何百ものユニットが画面に表示されるスタークラフトのようなゲームを見たことがありますが、サウンドはかなり「うるさくなく」、整理されています。それらの人々がどのようにこの効果を達成したかをお聞きしたいのですが?彼らはどのような音を受け入れたり、除外したりしますか?

現在、考えられる 3 つのモデルがあります: 1) 先入れ先出しモデル: 再生中のすべてのサウンドを受け入れますが、バッファーの制限に達するとすぐに、バッファー内の最初のサウンドが消音されます。

2) モデルを受け入れるか拒否するか: バッファがオーバーフローするまですべてのサウンドを受け入れ、その後、サウンドが終了してバッファが空になるまですべての再生を拒否します。

3) 最大音量のみのモデル: 現在、私のゲームにはさまざまな音量のさまざまなサウンドがあります。たとえば、爆発は銃声の効果よりも大きくなります。このモデルでは、最も大きな 32 の音が再生されます。上位 32 の中にある音が入ると、32 の中で最も低い音が「キック」され、その音が置き換えられます。

どのモデルが最適か、またはおそらく独自のモデルを提案できます =p。

4

1 に答える 1

1

「単一」イベントと「大量」イベントに異なるサウンドファイルを使用することも検討してください...

  • 1 宇宙船 - 「単一の宇宙船サウンド」を再生します
  • 2 つの宇宙船 - 「単一の宇宙船サウンド」を 2 回再生します
  • 3 つ以上の宇宙船 - 「多くの宇宙船の音」を再生します。

...バッファ内のサウンドをタイプ別にグループ化することは、とにかく良い考えかもしれません。それらが多すぎる場合、他の要素を黙らせることなく、1つの「宇宙船の音」を簡単に黙らせることができるからです。

于 2012-12-27T11:25:56.043 に答える