こんにちわ、Unityエンジニアのオオバです。

絶賛Unity×CRI ADX2を触っているのですが、自分の感覚とずれていて、少しハマったところをメモしておきます。

この記事の内容

1.一時停止メソッドを叩いてもステータスはPlaying

CriAtomExPlayer(Unityで言うAudioSource的なもの)には、ステータスが存在し、そのEnumが以下のように定義されています。

public enum Status {  
 Stop = 0,  /**< 停止中   */  
 Prep,   /**< 再生準備中  */  
 Playing,  /**< 再生中   */  
 PlayEnd,  /**< 再生完了  */  
 Error,   /**< エラーが発生 */  
}

Pause的なステータスは無いので、てっきりStopステータスになるかなと思って実装したら動かず、、、。
よくよくログ出力して調べるとPlayingステータスのままでした。

2.SetVolumeするだけではボリュームは反映されない

これはCRI ADX2あるあるかもしれないです。

_player.SetVolume(0.5f);  
// 更新関数を呼ぶ  
_player.UpdateAll();  

と更新関数を呼んであげないとパラメータは反映されません。
※UpdateAllの他にUpdateという関数もあります

👉 年収UP率93.8% / 平均年収UP額126万円のエンジニア転職サイト【転職ドラフト】

3.再生すると音がキュルキュル鳴る

CRI ADX2を使用して、Unity上で音がキュルキュルなった時の対処

先日執筆したこれ↑↑
ヘッドホンでテストしていたのでビビりました。

最後に

ただ、ADX2のC#コード内にビッシリとコメントアウトが書いてあるので、ちゃんと読めばハマり続けることはありません。そこはGood!。

そして、だいぶADX2と仲良くなれてきました。

昨年12月頃にMac版のAtomCraftがリリースされていたようで、タイミングが本当によかったです。
そのためだけにWindowsに切り替えるとかめんどいですわ。

オススメ記事