Microsoft DirectX 8.0 (C++)

オーディオ スクリプトの使い方

スクリプトは、DirectMusic Producer など、スクリプト エディタを含むアプリケーションでオーサリングされたオブジェクトである。スクリプトは主にテキストで構成されるが、スクリプト オブジェクトにはいくつかのバイナリ パラメータも含まれている。

概要については、「オーディオ スクリプト」を参照すること。

スクリプトは、IDirectMusicLoader8::GetObject メソッドを使ってロードする。IDirectMusicScript8 インターフェイスを取得し、IDirectMusicScript8::Init を呼び出して、スクリプトをパフォーマンスに関連付ける。

次のコードでは、スクリプトをロードして初期化している。m_pLoaderIDirectMusicLoader8 インターフェイスで、m_PPerformanceIDirectMusicPerformance8 インターフェイスであり、wstrFileName にはファイルの名前が格納されているとする。

IDirectMusicScript8*  pScript = NULL;
DMUS_SCRIPT_ERRORINFO errInfo;
HRESULT               hr;
 
if (SUCCEEDED(hr = m_pLoader->LoadObjectFromFile( 
        CLSID_DirectMusicScript, IID_IDirectMusicScript8,
        wstrFileName, (LPVOID*) &pScript)))
{
    hr = pScript->Init( m_pPerformance, &errInfo);
}

Init を除いて、IDirectMusicScript8 のメソッドには、3 つの主な目的がある。

列挙メソッドを除く、IDirectMusicScript8 のすべてのメソッドは、DMUS_SCRIPT_ERRORINFO 構造体からエラー情報を取得する。変数が見つからなかった場合や、ルーチン内のコードが実行できなかった場合は、エラーが発生する可能性がある。

スクリプトは、アプリケーションで直接ロードまたは呼び出しを行わなくても使用できる。DirectMusic Producer で作成するセグメントにスクリプト トラックを含めて、スクリプト内のルーチンの呼び出しをトリガすることができる。