ads by Amazon

Google+ Badge

2013年4月12日金曜日

13. 基礎アーキテクチャ

前の記事までの解説で、「音を鳴らす仕組み」についてご理解いただけたものと思います。
この記事からは、いよいよ波形メモリ音源を実装する為のアーキテクチャについて解説していきます。

(1)音源モジュール (H/W)
以前の記事で既に解説しましたが、VGSは、下図のように全音ストア方式の音源モジュール(エミュレータ)が、波形情報をPCMデバイスへ書き込むことで、音声の発音を行います。
発音機構

(2)オペレーション機構
ハードウェア(エミュレータ)は、それ単体では「無音」を発音し続けるだけです。
つまり、何も動作しません。
ハードウェアを動作させるには、必ずオペレーションが必要になります。
ハードウェアへのオペレーションを代替するプログラムのことを一般的に、「ドライバ」と呼びます。

(3)音源ドライバ (S/W)
音源モジュールを制御するには音源ドライバが必要になります。音源ドライバは、メモリ上に記憶されているオペレーションセットから、逐次的にオペレーションを取り出し、それを音源モジュールに伝えることで、ハードウェアを制御します。
音源ドライバ

(4)ハードウェアとソフトウェア
音源モジュールはハードウェア(H/W)で、音源ドライバはソフトウェア(S/W)です。
VGSは、ハードウェア(仮想ハードウェア)ですが、「ハードウェア機能」として音源ドライバもエミュレータの一部として実装しています。そのため、VGSを利用する場合、プログラマが音源ドライバを作成する必要はありません。VGSは、そういった低レベルプログラミングの負担をプログラマに負わせないことで、ゲームの作り易い環境を提供することを、設計思想の基礎に据えています。その反面、プログラマから「自前の音源を作成する」という自由度を奪ってしまっている訳ですが。

自前の音声システムを作るには、その両方についての理論と実装をマスターしなければなりません。以降の記事では、音源モジュールと音源ドライバの理論と実装について解説していきます。

0 件のコメント:

コメントを投稿