0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Unity】CRIで音を鳴らす(スクリプト)

Last updated at Posted at 2024-07-04

CRIとは?

CRIとは、CRI・ミドルウェア株式会社が提供している、
ゲームやマルチメディアコンテンツの開発を支援するための技術とツールの総称です。
本稿では、CRIWAREというツールを使用していきます。

インストール方法

こちらの ダウンロードページ から、Unity向けのプラグインである
「ADX LE Unity SDK(3.10.01)」をダウンロードしましょう。

ダウンロードしたフォルダを展開して、「"cri\unity\plugin\criware_unity_plugin_v2_42_46_le_ja.unitypackage"」
のパスにあるパッケージを自身のプロジェクトにインポートします。

Assetsフォルダ直下に「CRIMW」というフォルダがあればインストール完了です。

音声データの準備

UnityでCRIWAREを使用して音声を再生するには、
AtomCraftというツールでビルドされた音声データが必要になります。

「音声のビルド→Unityにインポート→再生」というイメージです。

ビルドの方法は、こちらの記事 で紹介しています。

音声のインポート

音声のビルドが終わったら、Unityにインポートしていきます。

「Window→CRIWARE→Atom Browser」の順に開きましょう。

「Atom Browser」下部の「Import Assets from Atom Craft Project」を開き、

「Import From」に、AtomCraftで作成したプロジェクトのAssetsフォルダを指定します。

最後に「Import Assets」ボタンをクリックすれば、音声のインポートは完了です。

スクリプトで音声を再生する

スクリプトから音声を再生するには、
「プレイヤーを作成→Acbを取得→キューを設定→ボリュームを設定→再生」
という工程が必要になります。

以下のコードを適当なスクリプトにコピペしましょう。

using UnityEngine;
using System;
using System.Collections.Generic;

public class Test : MonoBehaviour
{
    private CriAtomExPlayer _player; 

    void Start()
    {
        _player = new CriAtomExPlayer(); // プレイヤーを作成
    }

    public void Play(string cueSheetName, string cueName, float volume)
    {
        var currentAcb = CriAtom.GetAcb(cueSheetName); // Acbを取得
        _player.SetCue(currentAcb, cueName); // キューを設定
        _player.SetVolume(volume * _volume); // ボリュームを設定
        player.Start(); // 再生
    }
}

コードの処理と工程の対応をコメントしています。
Acbの取得・キューの設定で必要な「キューシート名・キュー名」は、
「Atom Browser」を開いて再生したい音声のものを探しましょう。

ボタンなどからPlayメソッドを呼び出すと音声を再生できるはずです!

最後までご覧いただきありがとうございました :laughing:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?