HOW TO
CRIWARE Unity Plug-inで、ある処理や機能を実現するための方法、手順について解説します。

ADX2でキューがループ再生されるかどうかを判定したい

キューがループ再生されるかどうかを判定するにはCriAtomExAcbからキュー情報を取得し、
CriAtomEx.CueInfo.length が -1 かどうかをチェックしてください。

例えば以下のようなコードになります。

/* CriAtomExAcbを取得 */
CriAtomExAcb acb = CriAtom.GetAcb("<CueSheetName>");

...

/* CriAtomExAcb からキュー情報を取得 */
CriAtomEx.CueInfo cueInfo;

if (acb.GetCueInfo ("<CueName>", out cueInfo)) {
    /* ループ再生されるキューは CriAtomEx.CueInfo.length が -1 になります。 */
    bool isLoop = (cueInfo.length == -1);

    ...
}
注意:
なお、CriAtomEx.CueInfo.length には、いくつかの制限事項がありますのでご注意ください。
  • 基本的には、AtomCraft上でピッチパラメータ変更していない単純なキューに関しては値が取得できます。
  • ランダムパラメータを使用していたり、ループ音などのデータ作成時にキューの長さを決定出来ないキューに関しては、正確な値が取得できません。
  • ループ音の場合には -1 となります。

CRI Middleware logo Copyright (c) 2012-2018 CRI Middleware Co., Ltd. CRI ADX2 LE マニュアル (for Unity) SDKVer.2.10版