アバターは、入力するスペース内での識別子となります。 SocialInteractions開発者モジュールでは、各ユーザーが自分自身と自然な動きをよりよく表現し、バーチャル空間に少しだけ現実的な要素を加えることができます。
このモジュールには、以下の機能が含まれています。
体の向き | 首と腰の回転を組み合わせて、対応するユーザーのカメラが指す場所、全員のアバターフェイスの頭を作成します。 これは、他の誰かが誰と、または何と対話しているのかについて微妙手がかりを提供します。 |
チャットアニメーション | 送信するメッセージの内容に応じて、アバターアニメーションを時折プレイさせることで、バーチャル空間内チャットに活気を与えられます。 各アニメーションを有効にする「トリガーワード」のリストを設定できます。 |
モジュールの使用法
インストール
バーチャル空間でSocialInteractionsモジュールを使用するには、次の手順に従います。
表示タブから、ツールボックスを開き、マーケットプレイスタブを選択します。
モデルのソートが選択されていることを確認し、カテゴリのすべてのボタンを表示をクリックします。
DEV モジュールタイルを見つけてクリックします。
Social Interactions(ソーシャルインタラクション)モジュールを見つけてクリックするか、3D ビューにドラッグ&ドロップします。
エクスプローラウィンドウで、SocialInteractionsモデル全体をServerScriptServiceに移動します。 バーチャル空間を実行すると、モジュールはそれ自体をさまざまなサービスに配布し、実行を開始します。
設定
SocialInteractions(ソーシャルインタラクション)モジュールを挿入するだけで、プレース内のボディの向きとチャットアニメーション機能が両方有効になります。 デフォルトの動作を調整するには、次の手順に従います。
StarterPlayerScriptsで、新しいLocalScriptを作成して、それをConfigureSocialInteractionsに名前変更します。
設定関数を使用して、以下のコードをスクリプトに貼り付け、モジュールの動作をカスタマイズします。
LocalScriptlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Make waist rotation more pronounced and disable the chat animations featureSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
アニメーションでのチャットのトリガーワード
アニメーションでの各チャットをアクティブ化する「トリガーワード」のリストを設定できます。 また、Lua 文字パターンを使用して、認識可能なワードを増やすことができます。 たとえば、ウェーブアニメーションで使用される組み合わせの 1 つでは、he+y+o*、hey、heyyy、heyo、heyyyyo、heeeeyyyyo、およびその他のバリエーションがアニメーションをトリガーする資格があります。
また、トリガーワードは大文字小文字を区別しないため、heyを入力すると、HEY、Hey、その他のバリエーションなどと同じになります。
アニメーション | アニメーションID | ワードパターン |
---|---|---|
ウェーブ | 3344650532 | hell+o+ h+i+o* wa+[sz]+u+p+ y+o+ greetings* salutations* goo+d+%smorning+ he+y+o* howdy+ what's*%s*up+ |
拍手 | 5911729486 | ya+y+ h[ou]+r+a+y+ woo+t* woo+h+oo+ bravo+ congratulations+ congrats+ gg pog+ poggers+ |
同意 | 4841397952 | ye+s* ye+a+h* y[eu]+p+ o+k+ o+k+a+y+ |
同意しない | 4841401869 | no+ no+pe+ yi+ke+s+ |
肩をすくめる | 3334392772 | not+%s+sure+ idk+ don't%s+know+ i%s+don't%s+know+ who+%s+knows+ |
笑う | 3337966527 | lo+l+ rof+l+ ha[ha]* he[he]+ |
眠る | 4686925579 | zzz+ yawn+ |
各アニメーションを有効するトリガーワードのリストを設定でき、setTriggerWordsAnimation 関数でさらにアニメーションを追加できます 例えば、以下の LocalScriptは、crazy や craaaaaazy のようなトリガー・ワードをサポートするために、cra+zy の文字列パターンに 傾きのアニメーションをリンクします。 また、coolやcooooolのような拍手アニメーション用coo+lの追加の文字列パターンも登録します。
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Register string pattern for the "Tilt" animationSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554", {"cra+zy"})-- Register additional string pattern for the "Applaud" animationSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://5911729486", {"coo+l"})
API リファレンス
関数
設定
configure(config:table):nil
デフォルト設定オプションは、configテーブル内の以下のキー/値を使用して上書きします。 この関数は、LocalScriptからのみ呼び出すことができます。
キー | 概要 | デフォルト |
---|---|---|
useBodyOrientation | 体の向き機能を切り替えます。 | true |
waistOrientationWeight | 体の向きは、ウエストと首の回転の組み合わせを使用します。 このパラメータでは、2つのうちのどちらが普及しているかを決定します。 1の値は、ウエストを完全に強調し、0は首を完全に強調します。 | 0.5 |
useChatAnimations | **チャットアニメーション | true |
useDefaultTriggerWordsForChatEmotes | チャットアニメーションには、トリガーワ―ドのデフォルトのリストが付属しています。 このパラメータをオフにして、独自のものを提供したい場合、falseに設定します。 | true |
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Make waist rotation more pronounced and disable the chat animations featureSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
setTriggerWordsForChatAnimation
setTriggerWordsForChatAnimation(animationId:string, triggerWords:table):nil
チャットアニメーション機能に新しいアニメーションを登録します。 テーtriggerWordsブルに含まれる文字列パターンに一致するワードを入力すると、ID が最初のパラメータとして渡されたアニメーションがアクティブ化されます。
トリガーワードは、プレイヤーに対して大文字小文字を区別しないため、woahのパターンでは、woah、WOAH、Woahなどのチャットのフレーズを受け入れます。
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- Register new string pattern for a custom animationSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554",{"cra+zy", "woah+"})
イベント
onChatPlayed
onChatAnimationPlayed(animationId:string, triggerWord:string): RBXScriptSignal
チャットアニメーションがプレイされると発生します。 接続された関数は、その引数として、アニメーション ID とアニメーションをトリガーしたワードを受け取ります。 このイベントは、LocalScript内でのみ接続できます
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
SocialInteractions.onChatAnimationPlayed:Connect(function(animationId, triggerWord)
print(animationId, triggerWord)
end)