VRCの心音の入れ方

VRCの心音の入れ方、音データは転がっているけれど、その導入の仕方がいまいち分からない。というかModure Avaterの影響で細かいパラメータなどが分からなくても導入できるようになっているのが主流になってきたので、Read meにも説明や導入方法が掲載されないケースが多くなった気がします。
「みんなコレくらい知ってるよね?改変するならこれくら常識だよ!」というのが多い感じです。
確かに、好きでやっている以上調べたりするのは苦ではないのですが、、、嘘です苦痛です。苦労しないですぐ知りたいです。

なので、手始めに心音については、音データ(mp3)さえあれば導入できるやり方をメモしておきます。

1.Projectに心音データを入れる

場所はどこでもよいです。とりあえず、ファイルデータをドラッグアンドドロップで任意のProjectフォルダに格納します(図ではHeart001)

2.アバターの心臓にあたるBornに心音用のEmpty Dataを作成

だいたいのアバターはHips>Spine>Chest(場合によってはBreast)あたりで良いかと思います、ここに、右クリックから、Create Emptyで空のハコを作ります。
今回は「心音」とそのままの名前を付けます。もしかしたら文字コードの制限などのアドオンが合ったりすることを考え英語の方がよいかもしれません

3.InspectorにAudio Sourceを追加します

何もない枠があると思うので、InspectorからAdd Compornentから、ここに直接Audio Sourceと入力して検索し、でてきた黄色いメガホンのアイコンがある「Audio Source」と、青いアイコンの「VRC Spatial Audio Source」を追加します

4.Audio Sourceの設定

ここが一番の要所。
以下に主要なパラメータの説明と一般的な適正値を説明します。(by ChatGPTなので多少のハルシネーションは受け入れるか自分で検証してください)

1. AudioClip

  • 説明: 再生する音源ファイルを指定します。

  • 適正値: 再生したい音声ファイルを割り当てます。MP3、WAVなどのフォーマットに対応しています。

2. Output (出力)

  • 説明: オーディオソースの出力先を指定します。デフォルトはオーディオリスナーに送られますが、ミキサーグループに割り当てることもできます。

  • 適正値: ミキサーグループを使って複数の音を制御したい場合は、適切なAudio Mixer Groupを割り当てます。シンプルな場合はなしでも問題ありません。

3. Mute (ミュート)

  • 説明: このチェックボックスをオンにすると、オーディオソースがミュートされます。

  • 適正値: 特定のタイミングで音をオフにしたいときに使用します。通常はオフにしておきます。

4. Bypass Effects

  • 説明: これをオンにすると、ミキサーのエフェクトをバイパス(無視)します。

  • 適正値: エフェクトを使わない場合や、特定のオーディオソースでエフェクトを無効にしたい場合はオンにします。

5. Bypass Listener Effects

  • 説明: オーディオリスナーに対する影響をバイパスします。これにより、リスナーの位置やエフェクトに関わらず、音が均一に再生されます。

  • 適正値: 通常はオフにしますが、特定のケース(背景音やUI音など)でリスナーの効果を無視したい場合はオンにします。

6. Bypass Reverb Zones

  • 説明: リバーブゾーンの影響を無視します。

  • 適正値: リバーブ効果を無効化したい場合にオンにします。

7. Play On Awake

  • 説明: オブジェクトが有効化された際に、オーディオソースが自動的に再生を開始します。

  • 適正値: オンにするとオブジェクトが生成された瞬間に再生が開始されます。自動再生が必要な場合はオンにしますが、スクリプトで制御する場合はオフにします。

8. Loop

  • 説明: オーディオクリップを繰り返し再生します。

  • 適正値: 繰り返し再生が必要な音(BGMや環境音など)の場合はオンにします。

9. Priority (優先度)

  • 説明: 複数のオーディオソースがある場合に、どの音を優先的に再生するかを決定します。0が最も高く、256が最も低い優先度です。

  • 適正値: 重要な音(キャラクターの音声や効果音など)は低い値(0~50)、背景音や環境音などは高い値(100~256)に設定します。

10. Volume (音量)

  • 説明: オーディオソースの音量を指定します。1.0が通常の音量で、0がミュート状態です。

  • 適正値: 通常は 1.0 に設定します。ゲームのバランスに応じて0~1.0の範囲で調整します。

11. Pitch (ピッチ)

  • 説明: 音の高さを変えるパラメータです。1.0が通常のピッチで、0.5は低く、2.0は高い音になります。

  • 適正値: 通常は 1.0 に設定します。特定の効果を出したい場合は調整します。

12. Stereo Pan (ステレオパン)

  • 説明: ステレオサウンドの左右のバランスを調整します。-1は完全に左、1は完全に右です。

  • 適正値: モノラル音源では使用しません。ステレオで左右の位置を調整したい場合に使います。

13. Spatial Blend (空間ブレンド)

  • 説明: 2D音源と3D音源の割合を調整します。0は完全に2D(ステレオ)、1は完全に3D(空間内に配置された音)。

  • 適正値: 3Dゲームでは通常 1.0 に設定し、空間オーディオ効果を活かします。2DゲームやUI音の場合は 0 にします。

14. Reverb Zone Mix (リバーブゾーンミックス)

  • 説明: リバーブゾーンの影響を受ける音量を指定します。0はリバーブの影響なし、1はフルリバーブ、-1は自動設定です。

  • 適正値: リバーブゾーンを使用している場合、0~1 の範囲で調整します。

15. Doppler Level (ドップラーレベル)

  • 説明: ドップラー効果の強度を調整します。リスナーとオーディオソースの相対的な速度によって音のピッチが変化します。

  • 適正値: 通常は 1.0 に設定しますが、リアルな音の移動を表現する場合に調整します。不要な場合は 0 にします。

16. Spread (拡散)

  • 説明: 3Dサウンドの広がり具合を調整します。0は単一の点から発生する音で、180は最大の広がりを持つ音です。

  • 適正値: 単一の効果音は 0 に近づけ、環境音や広がりのある音は 60~120 に設定します。

17. Min Distance (最小距離)

  • 説明: この距離以内では音量が最大になります。これを超えると距離に応じて減衰します。

  • 適正値: 近距離での最大音量を設定します。通常は 1.0~5.0 メートル程度に設定します。

18. Max Distance (最大距離)

  • 説明: この距離を超えると音が聞こえなくなります。

  • 適正値: 20~50メートル程度が一般的です。空間の大きさやゲームの設定に応じて調整します。

参考までに、自分はこれくらいの値で設定しました。

5.VRC Spatial Audio Sourceの設定

こちらも同じように各設定を入れていきます。(例によって以下ChatGPTより)

1. Enable Spatialization (空間化の有効化)

  • 説明: このオプションを有効にすると、音源が空間的に配置され、リスナーの位置に応じた方向性や距離感が表現されます。

  • 適正値: 一般的には On にして、3Dオーディオ効果を活かします。

2. Gain (ゲイン)

  • 説明: 音源の全体的な音量をコントロールします。これにより、音の強さを増減させることができます。

  • 適正値: 1.0 がデフォルト値。必要に応じて、音源の音量に応じて調整します。

3. Near Radius (ニア半径)

  • 説明: リスナーがこの半径の範囲内にいる場合、音は最大音量で再生されます。

  • 適正値: 音源からどれだけ近い位置で最大音量を再生するかによって異なりますが、一般的には 1.0 ~ 2.0 メートル 程度が適切です。

4. Far Radius (ファー半径)

  • 説明: この距離を超えると、音は減衰し、最終的に聞こえなくなります。音源からリスナーまでの最大距離を定義します。

  • 適正値: 空間のサイズや使用状況に応じて調整しますが、10 ~ 20 メートルが一般的です。

5. Volumetric Radius (ボリュメトリック半径)

  • 説明: 音が球状に広がる場合の範囲を指定します。この半径内では音が均一に再生されます。

  • 適正値: 通常は 0 のままにして、音がリスナーに向かって線形に減衰するようにします。ただし、特定の用途によっては 1.0 ~ 2.0 メートル 程度に設定することもあります。

6. Occlusion (遮蔽)

  • 説明: 壁や障害物による音の遮蔽効果を有効にします。リスナーと音源の間に障害物がある場合、音が遮蔽され、減衰したり、低音だけが聞こえたりします。

  • 適正値: On にして、よりリアルな体験を提供します。室内環境や建物の中で使用する場合は特に効果的です。

7. Spread (拡散)

  • 説明: ステレオ音源の広がりを調整します。値が大きいほど、音が広がって感じられ、小さい値では、より集中して聞こえます。

  • 適正値: 通常は 0 に設定しますが、大規模な音源や環境音の場合は 60 ~ 90 まで広げることも考えられます。

8. Priority (優先度)

  • 説明: どの音源が優先的に再生されるかを決定します。数値が低いほど高い優先度を持ち、他の音源よりも重要視されます。

  • 適正値: 重要な音は 0 ~ 50、背景音や環境音は 100 ~ 255 などで設定します。

9. Doppler Effect (ドップラー効果)

  • 説明: リスナーや音源が移動している場合に、音の周波数が変化する効果です。

  • 適正値: 通常は On にしておくと、音が移動する場合にリアリズムが増します。

10. Lowpass (ローパスフィルタ)

  • 説明: 高周波数の音を減衰させるフィルターで、距離に応じて音のこもり具合を調整できます。

  • 適正値: リアリズムを追求する場合に On にして、遮蔽された音や遠くの音に使います。

参考までに、自分はこんな感じで入れました。

6.sceneから範囲を確認

設定しながら、おおよその範囲は表示されると思いますが、影響する範囲を確認できます。心臓に近い部分から球体が広がるようにできればOKと思います。
今のままだと勝手に音がだだ洩れになっちゃうので、ON/OFFできるように、Radial Inventoryなどで制御することをおすすめします。
ちなみに、これでも範囲や音は大きいと思うヒトは小さくしたり色々試してみてください。そして、適正値をこっそり教えて下さい。

7.Avaterをアップロード

ここは省略します。


いかがでしたでしょうか。
今回はメモ書き+ChatGPTで調べた範囲を軽くまとめたNoteになります。
多分定期更新はしないですが、何かしらアウトプットをしておいたほうが良い欲が久しぶりに出たので。

この記事が気に入ったらサポートをしてみませんか?