メインコンテンツまでスキップ

WorldMascot Action Components

このドキュメントでは、WorldMascotシステムで使用される主要なActionコンポーネントについて解説します。


AlarmAction

AlarmActionは、指定した時刻にマスコットが特定のアクションを実行するアラーム機能を提供します。

概要​

このコンポーネントは、ワールドの現在時刻を監視し、設定されたアラーム時刻になると、登録されたアニメーション、音声、およびメッセージを再生します。アラームの設定や状態は、連携するAlarmSettingUIを通じてプレイヤーが操作できます。アラーム時刻やON/OFFの状態は、インスタンス内の全プレイヤーで同期されます。

パラメータ​

インスペクターで設定可能なパラメータは以下の通りです。

パラメータ型説明
Mascot SystemWorldMascotSystem連携するWorldMascotSystemのインスタンス。
Alarm Setting UIAlarmSettingUIアラームの設定を行うUIのインスタンス。
Alarm Set Voice Settingsアラームが設定された際に再生されるアクションの設定。
 Alarm Set Action Namestringアラーム設定時に登録されるアクションの名前。
 Alarm Set Lip Sync AnimationAnimationClipアラーム設定時に再生する口パクアニメーション。
 Alarm Set Facial AnimationAnimationClipアラーム設定時に再生する表情アニメーション。
 Alarm Set SoundAudioClipアラーム設定時に再生する音声。
 Alarm Set Messagestringアラーム設定時に表示する吹き出しのメッセージ。
 Alarm Set Message Durationfloat上記メッセージの表示時間(秒)。
Alarm Voice Settingsアラームが作動した際に再生されるアクションの設定。
 Alarm Action Namestringアラーム作動時に登録されるアクションの名前。
 Alarm Lip Sync AnimationAnimationClipアラーム作動時に再生する口パクアニメーション。
 Alarm Facial AnimationAnimationClipアラーム作動時に再生する表情アニメーション。
 Alarm SoundAudioClipアラーム作動時に再生する音声。
 Alarm Messagestringアラーム作動時に表示する吹き出しのメッセージ。
 Alarm Message Durationfloat上記メッセージの表示時間(秒)。

ContactAction

ContactActionは、プレイヤーがマスコットの特定部位(VRCContactReceiverが設定されたオブジェクト)に触れることで、マスコットがアクションを実行する機能を提供します。

概要​

このコンポーネントは、VRCContactReceiverを使用してプレイヤーとの接触を検知します。一定時間以上接触が続くと、登録された複数のアクションの中からランダムに一つが選択され、再生されます。再生されるアクションは、マスコットの現在のDefaultStateに応じてフィルタリングすることが可能です。

パラメータ​

インスペクターでは、以下のパラメータを持つアクションをリストで管理します。

パラメータ型説明
Contact Action Namestringこのコンポーネントで登録されるアクションのベース名。
Contact Activate Timefloatアクションを発動するために必要な接触時間(秒)。
Contact AnimationsAnimationClip接触時に再生されるアニメーション。
Contact Lip Sync AnimationsAnimationClip接触時に再生される口パクアニメーション。
Contact Facial AnimationsAnimationClip接触時に再生される表情アニメーション。
Contact SoundAudioClip接触時に再生される音声。
Contact Messagestring接触時に表示される吹き出しメッセージ。
Contact Message Durationfloat上記メッセージの表示時間。
Look At Enablesboolアクション再生中に、接触したプレイヤーの方向を向くかどうか。
Allowed Default Statesstringこのアクションが再生可能となるDefaultStateの名前。空の場合はどのステートでも再生可能です。

GreetingAction

GreetingActionは、プレイヤーが特定のエリアに初めて入ったときに、マスコットが挨拶のアクションを実行する機能を提供します。

概要​

このコンポーネントは、アタッチされたオブジェクトのCollider(トリガー設定が必要)にプレイヤーが侵入したことを検知します。プレイヤーがワールドに入ってから最初にそのエリアに侵入した際に、一度だけ挨拶のアクションを再生します。挨拶のメッセージには、プレイヤーの名前を埋め込むことができます。

パラメータ​

インスペクターで設定可能なパラメータは以下の通りです。

パラメータ型説明
First Greeting Namestring挨拶アクションの名前。
First Greeting AnimationAnimationClip挨拶時に再生するアニメーション。
First Greeting Lip Sync AnimationAnimationClip挨拶時に再生する口パクアニメーション。
First Greeting Facial AnimationAnimationClip挨拶時に再生する表情アニメーション。
First Greeting VoiceAudioClip挨拶時に再生する音声。
First Greeting Speech Bubblestring挨拶時に表示する吹き出しのメッセージ。{0}を記述すると、プレイヤーの名前に置き換えられます。
First Greeting Speech Bubble Durationfloat上記メッセージの表示時間(秒)。
Allowed Default Statestringこのアクションが再生可能となるDefaultStateの名前。空の場合はどのステートでも再生可能です。
Look At TargetTransform挨拶中にマスコットが向くターゲット。通常はプレイヤーの頭部位置を追従するためのオブジェクトを指定します。

MascotAnimationPlayAction

MascotAnimationPlayActionは、UIボタンなどを通じて、マスコットに任意のアニメーションを再生させる機能を提供します。

概要​

このコンポーネントは、複数のアニメーション、音声、メッセージなどをリストとして登録し、外部からの呼び出し(例:UIボタンのクリック)に応じて特定のアクションを再生します。ループ再生にも対応しており、再生中のループアニメーションを停止させることも可能です。

パラメータ​

インスペクターでは、以下のパラメータを持つアニメーションをリストで管理します。

パラメータ型説明
Animation Namesstring各アニメーションの名前。UIのボタンラベルなどに使用されます。
Animation ClipsAnimationClip再生するメインアニメーション。
LipSync Animation ClipsAnimationClip再生する口パクアニメーション。
Facial Animation ClipsAnimationClip再生する表情アニメーション。
Animation SoundsAudioClip再生する音声。
Loopsbool各アニメーションをループ再生するかどうか。

PhysBoneTriggerAction

PhysBoneTriggerActionは、プレイヤーがマスコットのPhysBoneが設定された部位を掴むことで、マスコットがアクションを実行する機能を提供します。

概要​

このコンポーネントは、アタッチされたVRCPhysBoneコンポーネントへのインタラクションを監視します。プレイヤーがPhysBoneを一定時間以上掴み続けると、登録された複数のアクションの中からランダムに一つが選択され、再生されます。再生されるアクションは、マスコットの現在のDefaultStateに応じてフィルタリングすることが可能です。

パラメータ​

インスペクターでは、以下のパラメータを持つアクションをリストで管理します。

パラメータ型説明
Trigger Grabbing Timefloatアクションを発動するために必要な掴み時間(秒)。
Action Namestringこのコンポーネントで登録されるアクションのベース名。
Animation ClipsAnimationClip掴まれた際に再生されるアニメーション。
LipSync Animation ClipsAnimationClip掴まれた際に再生される口パクアニメーション。
Facial Animation ClipsAnimationClip掴まれた際に再生される表情アニメーション。
Animation SoundsAudioClip掴まれた際に再生される音声。
Speech Bubble Textsstring掴まれた際に表示される吹き出しメッセージ。
Speech Bubble Durationsfloat上記メッセージの表示時間。
Look At Enablesboolアクション再生中に、掴んだプレイヤーの方向を向くかどうか。
Allowed Default Statesstringこのアクションが再生可能となるDefaultStateの名前。空の場合はどのステートでも再生可能です。

RandomTriggerAction

RandomTriggerActionは、マスコットが待機状態のときに、ランダムな間隔で自動的にアクションを実行する機能を提供します。

概要​

このコンポーネントは、指定された時間範囲内でランダムな待機時間ごとに、登録されたアクションの中から一つをランダムに選択して再生します。これにより、マスコットに自発的な振る舞いをさせることができます。再生されるアクションは、マスコットの現在のDefaultStateに応じてフィルタリングすることが可能です。

パラメータ​

インスペクターでは、以下のパラメータを持つアクションをリストで管理します。

パラメータ型説明
Min Trigger Timefloatアクションがトリガーされるまでの最小待機時間(秒)。
Max Trigger Timefloatアクションがトリガーされるまでの最大待機時間(秒)。
Contact Action Namestringこのコンポーネントで登録されるアクションのベース名。
Contact AnimationsAnimationClipランダムに再生されるアニメーション。
Contact Lip Sync AnimationsAnimationClipランダムに再生される口パクアニメーション。
Contact Facial AnimationsAnimationClipランダムに再生される表情アニメーション。
Contact SoundAudioClipランダムに再生される音声。
Contact Messagestringランダムに表示される吹き出しメッセージ。
Contact Message Durationfloat上記メッセージの表示時間。
Allowed Default Statesstringこのアクションが再生可能となるDefaultStateの名前。空の場合はどのステートでも再生可能です。