Guide2 のバックアップ(No.11)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Guide2 へ行く。
- 1 (2021-06-06 (日) 02:42:39)
- 2 (2021-06-06 (日) 15:21:20)
- 3 (2021-06-06 (日) 17:20:37)
- 4 (2021-06-07 (月) 21:54:31)
- 5 (2021-10-11 (月) 12:35:14)
- 6 (2021-12-15 (水) 22:12:40)
- 7 (2022-02-20 (日) 14:17:51)
- 8 (2022-07-10 (日) 19:30:12)
- 9 (2022-07-16 (土) 12:35:37)
- 10 (2022-07-16 (土) 13:59:49)
- 11 (2023-01-03 (火) 12:41:17)
BroadcastカテゴリはSDK2のVRC_Triggerでは主に次のプルダウンに相当します。
ref
また、Randomize、Delay in Secondsの設定もBroadcastで行います。
br
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を自動生成できる。詳細は後述。 |
br
VRC_Triggerのプルダウンに対する、Trigger2to3のモジュールとパラメータは次の通りです。
VRC_Trigger | Trigger2to3モジュール | Usable Player | Buffer Type |
Always | BroadcastGlobal | Always | Everytime |
Master | BroadcastGlobal | Master | Everytime |
Local | BroadcastLocal | - | - |
Owner | BroadcastGlobal | Owner | Everytime |
AlwaysUnbufferd | BroadcastGlobal | Always | Unbufferd |
MasterUnbufferd | BroadcastGlobal | Master | Unbufferd |
OwnerUnbufferd | BroadcastGlobal | Owner | Unbufferd |
AlwaysBufferOne | BroadcastGlobal | Always | BufferOne |
MasterBufferOne | BroadcastGlobal | Master | BufferOne |
OwnerBufferOne | BroadcastGlobal | Owner | BufferOne |
br
Common Bufferについて 
BroadcastGlobalをBuffer付きにしたとき、CommonBuffer欄が現れます。
CommonBufferは、途中入室者の再現順序を管理するために必要なもので、複数のトリガーが1つのオブジェクトに干渉している場合、これをSceneに用意していないと再現結果が狂うことになります。
br
空欄になっているCommonBuffer欄の右側の「Add CommonBuffer」欄、
またはHierarchyウィンドウの右クリックで「GameObject > Trigger2to3 > AddCommonBuffer」を選択すると、
CommonBufferがついたGameObjectがSceneの直下に生成されます。
生成すると、自動的にScene上のBroadcastGlobalと結びつきます。
ref
br
ref
br
CommonBufferを1つ用意していれば、他のBroadcastGrobalを設定したとき、自動的にそのCommonBufferと結びつくようになります。
br
br
br
複数のBuffer付きBloadcastが干渉している場合、必ずCommonBufferをSceneに用意しましょう。
深く考えず、Bufferを使用する場合はとにかくCommonBufferを用意する、という考えでも良いです。