使用方法② Broadcast

Last-modified: Tue, 03 Jan 2023 12:41:17 JST (481d)
Top > Guide2

 BroadcastカテゴリはSDK2のVRC_Triggerでは主に次のプルダウンに相当します。

guide2_1.png

 また、Randomize、Delay in Secondsの設定もBroadcastで行います。

 

 Trigger2to3では、トリガを引いた本人のみ動作させる場合はBroadcastLocalを使用し、トリガを引いた本人以外にも動作させる場合はBroadcastGlobalを使用します。Broadcastカテゴリのモジュールはこの2つのみです。

 Broadcastのパラメータは次の通りです。

パラメータLocal内容
Send Targetなし誰にActionを実行させるか。
All:全員
Owner:GameObjectの所持者
Usable Playerなし誰のTriggerを受け付けるか。
Always:全員
Master:インスタンスのマスターのみ(公式で推奨されていない?)
Owner:GameObjectの所持者のみ
Buffer Typeなし後から入ったユーザーに状態を再現させるため、トリガーを記録するか。
Unbuffered:記録しない(再現させない)
Buffer One:直近のトリガのみ記録する。記録するたび、1つ前の記録は破棄される。そのため、Everytimeと比べてコストが低い。
Everytime:すべてのトリガ履歴を記録する。再現するときは古いトリガーから全て実行される。
Delay in SecondsありActionの発生を遅らせる秒数。
RandomizeありActionの発生をランダムにするか。
オンのとき、ActionにRandom Avgという項目が追加され、そこに設定された確率で1つのActionが実行される。オフのとき、Actionはすべて実行される。
Common Bufferなし複数のトリガが1つのものを動作させる場合、正しい順番でBufferできるようにするためのモジュール。
Add Commonbuffer ボタンでCommonBufferを自動生成できる。詳細は後述。
 

 VRC_Triggerのプルダウンに対する、Trigger2to3のモジュールとパラメータは次の通りです。

VRC_TriggerTrigger2to3モジュールUsable PlayerBuffer Type
AlwaysBroadcastGlobalAlwaysEverytime
MasterBroadcastGlobalMasterEverytime
LocalBroadcastLocal--
OwnerBroadcastGlobalOwnerEverytime
AlwaysUnbufferdBroadcastGlobalAlwaysUnbufferd
MasterUnbufferdBroadcastGlobalMasterUnbufferd
OwnerUnbufferdBroadcastGlobalOwnerUnbufferd
AlwaysBufferOneBroadcastGlobalAlwaysBufferOne
MasterBufferOneBroadcastGlobalMasterBufferOne
OwnerBufferOneBroadcastGlobalOwnerBufferOne
 

Common Bufferについて Edit

 BroadcastGlobalをBuffer付きにしたとき、CommonBuffer欄が現れます。

 CommonBufferは、途中入室者の再現順序を管理するために必要なプログラムです。

 

 空欄になっているCommonBuffer欄の右側の「Add CommonBuffer」欄、
 またはHierarchyウィンドウの右クリックで「GameObject > Trigger2to3 > AddCommonBuffer」を選択すると、
 CommonBufferがついたGameObjectがSceneの直下に生成されます。

 生成すると、自動的にScene上のBroadcastGlobalと結びつきます。

guide2_4.png
 
guide2_5.png
 

 CommonBufferを1つ用意していれば、他のBroadcastGrobalを設定したとき、自動的にそのCommonBufferと結びつくようになります。

 Buffer付きBloadcastを使用する場合、必ずCommonBufferをSceneに用意してください。(v2.1.0より必須化)

 

 CommonBufferを同一シーンに複数設定することは可能です。