C++/オープンソースライブラリゲームプログラミング/サウンドの仕組み
をテンプレートにして作成
ホーム
検索
最終更新
ヘルプ
Wiki書式ヘルプ(整形ルール)
開始行:
* サウンドの仕組み [#cc2a1709]
OpenALを使い始めてきたのでサウンドの仕組みを考えてみる。
カタカナのそれっぽい言葉は適当です。
#contents
** 全体 [#q8f4c74b]
サウンドの処理は
- バッファリング
- コマンドハンドリング
が考えられる。
これは「メインスレッド」と呼ばれるゲームの進行を処理する...
(同じスレッドで処理してしまうと処理落ちしたら音がとぎれ...
** バッファリング [#z379ad7d]
バッファリングとは、非圧縮波形をバッファと呼ばれる領域に...
バッファリングは2種類考えられる。
:マルチバッファ再生|
いわゆるストリーミング再生。
バッファを複数用意して、片方のバッファの再生が終わったら...
オンメモリの圧縮オーディオを展開しつつ再生する場合や
ファイルからストリーミングで再生する場合に有効。
:ワンバッファ再生|
再生する波形を一気にバッファリングしてから再生する。
効果音など短い波形に有効。
ワンバッファするとメモリ効率が悪いけど展開処理が必要ない...
まぁマルチバッファしか使わないと思うけどねっ。
** コマンドハンドリング [#xec5a4c8]
コマンドとは、「再生」「停止」「音量設定」などの命令を指...
メインスレッドが発行したコマンドを、サウンドのスレッドが...
このことをコマンドハンドリングと呼んでみる。
終了行:
* サウンドの仕組み [#cc2a1709]
OpenALを使い始めてきたのでサウンドの仕組みを考えてみる。
カタカナのそれっぽい言葉は適当です。
#contents
** 全体 [#q8f4c74b]
サウンドの処理は
- バッファリング
- コマンドハンドリング
が考えられる。
これは「メインスレッド」と呼ばれるゲームの進行を処理する...
(同じスレッドで処理してしまうと処理落ちしたら音がとぎれ...
** バッファリング [#z379ad7d]
バッファリングとは、非圧縮波形をバッファと呼ばれる領域に...
バッファリングは2種類考えられる。
:マルチバッファ再生|
いわゆるストリーミング再生。
バッファを複数用意して、片方のバッファの再生が終わったら...
オンメモリの圧縮オーディオを展開しつつ再生する場合や
ファイルからストリーミングで再生する場合に有効。
:ワンバッファ再生|
再生する波形を一気にバッファリングしてから再生する。
効果音など短い波形に有効。
ワンバッファするとメモリ効率が悪いけど展開処理が必要ない...
まぁマルチバッファしか使わないと思うけどねっ。
** コマンドハンドリング [#xec5a4c8]
コマンドとは、「再生」「停止」「音量設定」などの命令を指...
メインスレッドが発行したコマンドを、サウンドのスレッドが...
このことをコマンドハンドリングと呼んでみる。
ページ名: