Microsoft DirectX 8.0 (C++)

DMUS_REGION

DLS ダウンロード用のリージョンを定義する。1 つまたは複数のリージョンを 1 つの音色バッファに埋め込み、音色ヘッダー チャンク DMUS_INSTRUMENT によって参照できる。

typedef struct {
    RGNRANGE RangeKey;
    RGNRANGE RangeVelocity;
    USHORT   fusOptions;
    USHORT   usKeyGroup;
    ULONG    ulRegionArtIdx;
    ULONG    ulNextRegionIdx;
    ULONG    ulFirstExtCkIdx;
    WAVELINK WaveLink;
    WSMPL    WSMP;
    WLOOP    WLOOP[1]; 
} DMUS_REGION;

メンバ

RangeKey
このリージョンのキー範囲。
RangeVelocity
このリージョンのベロシティ範囲。
fusOptions
このリージョンの合成オプション。次のフラグが定義されている。
F_RGN_OPTION_SELFNONEXCLUSIVE
合成エンジンが同じノートの 2 回目のノートオンを受け取ると、2 番目のノートは最初のノートと同様に演奏される。デフォルトではこのオプションはオフになっているので、合成エンジンは最初のノートにノートオフを強制的に適用する。
usKeyGroup
ドラム楽器のキー グループ。キー グループの値により、同じグループに所属する 1 つのドラム楽器内で複数のリージョンを利用できる。あるキー グループを指定してあるノートを演奏しているときに、同じキー グループを指定してほかのノートを演奏するよう合成エンジンが指示を受けた場合、合成エンジンは同じキー グループの値を持つほかのすべてのノートをできるだけ早くオフにすべきである。現在、キー グループ 1 〜 15 が有効であり、0 はキー グループが存在しないことを意味する。
ulRegionArtIdx
DMUS_OFFSETTABLE 構造体内にある、リージョンのグローバル アーティキュレーション チャンクのインデックス。この値が 0 の場合、リージョンはアーティキュレーションを保持せず、音色のグローバル アーティキュレーションに依存する。
ulNextRegionIdx
DMUS_OFFSETTABLE 構造体内にある、リージョン リスト内の次のリージョンのインデックス。この値が 0 の場合、それ以上リージョンはない。
ulFirstExtCkIdx
DMUS_OFFSETTABLE 構造体内にある、サードパーティ拡張チャンクのインデックス。この値が 0 の場合、リージョンには拡張チャンクが関連付けられていない。
WaveLink
リージョンからウェーブへのリンクを管理する、標準的な DLS 構造体 (Dls1.h ヘッダー ファイル内で宣言されている)。WAVELINK 構造体の ulTableIndex メンバは、関連付けられたウェーブ バッファのダウンロード識別子を提供する (詳細については、「DMUS_DOWNLOADINFO」と「下位レベル DLS」を参照すること)。
WSMP
ウェーブの再生を管理する、標準的な DLS 構造体 (Dls1.h 内で宣言されている )。cSampleLoops メンバが 1 の場合、続く WLOOP 構造体はループの開始ポイントと終了ポイントを保持する。
WLOOP[ ]
ループを記述する、標準的な DLS 構造体 (Dls1.h 内で宣言されている )。

動作環境

  ヘッダー : dmdls.h で宣言。