アバターは、あなたが(を)入力/(に)入るるすべての空間であなたの身分です。The ソーシャルインタラクション 開発者モジュール は、各ユーザーが自分自身と自然な動きをよりうまく表現でき、経験にリアリズムの一瞬を加えます。
このモジュールには次の機能が含まれています:
ボディオリエンテーション | 首のすべての人のアバターの顔を通して、相応するユーザーのカメラが指している場所を指し、首と腰の回転のミックスで指し示します。これにより、誰か他の誰かが相互作用しているかどうかの微妙なヒントが提供されます。 |
チャットアニメーション | アバターが時折動画を再生するようにして、体験中のチャットに少しの活気を加え、送信したメッセージの内容に応じて動画を再生します。各アニメーションをトリガーする「トリガーワード」のリストは構成可能です。 |
モジュール使用法
インストール
エクスペリエンスで SocialInteractions モジュールを使用するには:
ビュータブから、ツールボックスを開き、クリエイターストアタブを選択します。
モデル の順序が選択されていることを確認し、 すべて表示 ボタンをクリックして、 カテゴリ を選択します。
ロケートしてクリックして 開発モジュール タイル。
ソーシャルインタラクション モジュールを見つけてクリックするか、ドラッグアンドドロップして 3D ビューに移動します。
エクスプローラー ウィンドウで、 ソーシャルインタラクション モデル全体を ServerScriptService に移動します。エクスペリエンスを実行すると、モジュールは複数のサービスに分配され、実行を開始します。
構成
単に ソーシャルインタラクション モジュールを挿入するだけで、場プレース内の両方の ボディオリエンテーション および チャットアニメーション 機能が有効になります。デフォルトの動作を調整するには:
In スタータープレイヤースクリプト , 新しい LocalScript を作成し、名前を ソーシャルインタラクションの構成 に変更します。
新しいスクリプトに次のコードを貼り付け、configure 関数を使用してモジュールの動作をカスタマイズします。
本地スクリプトlocal ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- ウエスト回転をより際立たせ、チャットアニメーション機能を無効にするSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
チャットアニメーショントリガー単語
各チャットアニメーションをトリガーする「トリガー単語」のリストは構成可能であり、 Luau 文字列パターンが使用されて認識可能な単語が増加します。たとえば、 ウェーブ アニメーションで使用される 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+ |
各アニメーションを起動するトリガーワードのリストは構成可能であり、追加のアニメーションは setTriggerWordsForChatAnimation 関数を介して追加できます。たとえば、次の LocalScript リンクは、傾き アニメーションを cra+zy の文字パターンでリンクし、トリガーワードのように crazy や craaaaaazy をサポートします。また、coo+l による応援アニメーションの追加の弦パターンを登録し、 や cool などの単語をサポートするために、coooool という言葉も登録します。
本地スクリプト
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- 「傾き」アニメーションのストリングパターンを登録するSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554", {"cra+zy"})-- 「拍手」アニメーションの追加の弦パターンを登録するSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://5911729486", {"coo+l"})
API リファレンス
機能
設定する
環境設定(config: table )
次のキー/値を介してデフォルト設定オプションを上書きして、config テーブルの中の。この機能は LocalScript からのみ呼び出すことができます。
キー | 説明 | デフォルト |
---|---|---|
useBodyOrientation | ボディオリエンテーション 機能を切り替えます。 | 真 |
waistOrientationWeight | ボディオリエンテーションは、腰と首の回転の混合を使用します;このパラメータは、2つのうちどちらが優勢かを決定します。1 場所の値は、腰に強調を置き、0 場所は首に強調を置きます。 | 0.5 |
useChatAnimations | チャットアニメーション 機能を切り替えます。 | 真 |
useDefaultTriggerWordsForChatEmotes | チャットアニメーションには、デフォルトの トリガーワード リストが付属しています。このパラメータを false に設定して、オフにして自所有のものを提供したい場合 | 真 |
本地スクリプト
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- ウエスト回転をより際立たせ、チャットアニメーション機能を無効にするSocialInteractions.configure({waistOrientationWeight = 0.75,useChatAnimations = false,})
チャットアニメーション用トリガーワードを設定する
setTriggerWordsForChatAnimation(animationId: string , triggerWords: table )
チャットアニメーション機能に新しいアニメーションを登録します。triggerWords テーブルに含まれるストリングパターンに一致する単語を入力すると、ID が最初のパラメータとして渡されるアニメーションが有効になります。
トリガー単語は、プレイヤーに対して 大文字小文字を区別しない ので、パターン woah は、woah、WOAH、Woah、その他の変化を受け入れます。
本地スクリプト
local ReplicatedStorage = game:GetService("ReplicatedStorage")local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))-- カスタムアニメーションの新しい弦パターンを登録するSocialInteractions.setTriggerWordsForChatAnimation("rbxassetid://3334538554",{"cra+zy", "woah+"})
イベント
オンチャットアニメーションプレイ済み
チャットアニメーションが再生するときに発火します。接続された関数は、アニメーション IDとアニメーションをトリガーした単語を引数として受け取ります。このイベントは、LocalScript でのみ接続できます。
本地スクリプト
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SocialInteractions = require(ReplicatedStorage:WaitForChild("SocialInteractions"))
SocialInteractions.onChatAnimationPlayed:Connect(function(animationId, triggerWord)
print(animationId, triggerWord)
end)