9/15からワールドクラフトストアが公開!自作のモデルをcluster内で使えるアイテムとして販売できます。誰でもチャレンジできるよう記事も公開しています。

自分だけに聴こえるローカルBGMをつくる

今回はPlay Audio Source Gimmickを使って、ローカルBGM(自分だけに聞こえるようにする)をオン・オフできるスイッチをつくります。

事前準備

まず、clusterにワールドをアップロードできる環境を事前に用意してください。

準備はこちらを参考にしてください。

はじめてのワールド作成

上記で紹介する方法以外ではテンプレートプロジェクトを利用するのがおすすめです。下記URLからテンプレートプロジェクトをダウンロードして、Unityで開くことで、clusterへアップロードする環境まで一気に準備することができます。
テンプレートワールドって何?って方はこちらの記事で導入方法を解説しているので、ぜひご覧ください。動画でも解説しています。

BGM を設定しよう

まずはPlay Audio Source Gimmickを使ってBGMを流せるようにします。

  • 右クリックまたは Unity 上部メニュー欄にある「Object」から「Create Empty」で空のオブジェクトを作成しましょう。
  • 名前はわかりやすいように『BGM』と変更します。
  • 作成したBGMに「Add Component」から「Play Audio Source Gimmick」を追加します。これを追加すると、自動的に「Audio Source」も追加されます。

まずは 「Audio Source」の設定からしていきます。

  • 「Audio Clip」の◎マークを押して、設定したい音源をセットします。
  • 最初から BGM が流れないように「Play On Awake」のチェックマークを外しておきましょう。
  • また、BGM がループするように 「Loop」にチェックマークを入れましょう。

次に「Play Audio Source Gimmick」を設定します。

  • Target を「Local Player」、Key を「bgm」、Parameter Type を「Bool」に変更します。

ポイント
Play Audio Source GimmickはLocal Playerに設定することでどこでもローカルにできます。

Bool を用いることでBGMのオンオフがスイッチひとつでできるようになるためおすすめです。この設定が完了したら下記の画像のようになっています。

ローカルBGMを流してみよう

BGM のオンオフを切り替えるボタンを配置します。

  • Hierarchy を右クリックまたは Unity 上部メニュー欄にある「3D Object」から「Cube」で立方体を作成しましょう。

Interact Item Trigger」は使われたことを通知するトリガーです。

  • Target を「Owner」、Key を「SwitchBgm」、Value を「Signal」に変更します。
  • ローカルでオンオフの設定をするために Target を「Owner」にしています。

On Create Item Trigger」はアイテムが生成された時に通知するトリガーです。ここでは BGM のオンオフを管理するために使用しています。

  • Target を「Owner」、Key を「bgm」、Value を「Bool」に変更します。
  • 「Bool」にチェックマークを入れないことで、最初は音楽が流れていないことを宣言しています。

Player Logic」は、メッセージを読み取り、計算した結果をプレイヤーへメッセージとして通知するオペレーションです。

  • Target を「Player」、Key を「SwitchBgm」に変更します。
  • 次に「SwitchBgm」というメッセージをプレイヤーが読み取った際の処理を追加していきます。Key を「bgm」、「Bool」に変更してください。
  • ロジックの種類は『Condition』を使用します。『Condition』は引数1の値が true の場合は、引数2の値を返します。そうでない場合は、引数3の値を返します。つまりこのロジック一つでBGMのオンオフが可能になります。
  • 1つ目の引数は「SwitchBgm」を受け取るために RoomState に変更します。RoomStateはメッセージを読んで使用する場合に設定し、型と対象と識別子を指定します。今回はオンオフを決定する Bool を用いているため「Bool」を設定してください。
  • 2つ目、3つ目の引数は現在の状態がオンかオフかを判定するために利用しています。オンオフは定数を扱う Constant に設定します。

下記の画像のように設定できればOKです!

今回のギミックの処理のイメージはこんな感じです

これでローカルBGMの設定は完了です!早速試してみましょう🙌
※GIFでは音声が伝わらないため、画面に文字を表示しています。

BGMの音量を調節してみよう

BGM を設定した時に音が大きいと感じたら、Game View の Stats を押して Audio Level を確認してみましょう。Unity の Play ボタン「▶」を押すとリアルタイムで、現在表示されているシーンの音量が確認できます。

Unity の Play ボタン「▶」を押して、Audio Level の値を見ながら BGM の Volume を減らします。このとき変更した数値は再生をプレビューを停止するともとの値に戻ってしまうため数値をしっかり覚えておきましょう。
使用している音源にもよりますが、「Volume」の値を 0.1 ~ 0.2 程度に設定すると音量がちょうどよくなることが多いです。

これで調整前の Level が-13.7dB、調整後の Level が-42.1dBになりましたね。
BGM の Audio Level はおおよそ -40dB 付近に設定すると、音量バランスが大きく崩れることはありません。


最後に公式による記事や多くのクリエイターの皆さんによるドキュメントやコミュニティを紹介します。
ぜひ活用して自分だけのワールドを制作してみましょう!

▼ 「Cluster Creator Kit」の全てが分かる公式ドキュメント
Cluster Creator Kit ドキュメントhttps://docs.cluster.mu/creatorkit/

▼ クリエイターによる投稿記事まとめ
ワールド制作部https://note.com/cluster_official/m/m1fd772ab8f45
アバター制作部https://note.com/cluster_official/m/m6b18e343f35c
イベント制作部https://note.com/cluster_official/m/m7155e6f6887f

▼ 分からないことがあればコミュニティを活用してみましょう!
Cluster Creator Community Discord
https://discord.gg/DHQmAfDhkt

記事をシェアしてワールド制作を盛り上げよう!