VRCSDKヘルパー
ヘルパーコンポーネントは、VRC SDKコンポーネントの動作を補助するためにオブジェクトに追加されます。これらのコンポーネントの役割は、CyanEmuやPhase 2の頃から変わっていませんが、オブジェクト自体の機能とは無関係なロジックの一部は削除されています。例えば、CyanEmuではCyanEmuPickupHelperスクリプトがピックアップを保持するためのロジックを処理していましたが、この動作は現在、ピックアップヘルパークラスから切り離され、ピックアップ管理システムに移管されています。PickupHelperのコードは、現在ではPlayerHandがピックアップをどのように扱うべきかというデータを提供するのみとなっています。
ヘルパークラスは、ClientSimで使用されるインターフェースを拡張することもあります。インターフェースには、Usable(使用可能)とHandler(ハンドラー)の2つのカテゴリーがあります。
Usableインターフェース
Usableインターフェースは通常「able」で終わり、ClientSim内で何らかの方法で使用できるアイテムを表します。これらはどのように使用できるかという情報を提供しますが、それらを使用するためのメソッド自体は含まれていません。
| 名前 | 説明 |
|---|---|
IClientSimInteractable | インタラクション可能なオブジェクトを表します |
IClientSimPickupable | 持ち上げ可能なオブジェクトを表します。Interactableを継承しています。 |
IClientSimStation | プレイヤーが座るために使用できるオブジェクトを表します。 |
IClientSimSyncable | オーナーを持つことができるオブジェクトを表します。 |
IClientSimPositionSyncable | 位置を同期するオブジェクトを表します。Syncableを継承しています。 |
ハンドラーインターフェース
これら2つのインターフェース型を使用することで、HelperクラスはVRChat SDKのコンポーネント情報をラップし、ClientSimに提供する手段となります。
| 名前 | 説明 |
|---|---|
PositionSyncedHelperBase | VRCObjectSync用のヘルパーです。PositionSyncedHelperBaseを継承しています。Syncable、PositionSyncable、RespawnHandlerを実装します。 |
ObjectSyncHelper | VRCObjectSync用のヘルパーです。PositionSyncedHelperBaseを継承しています。Syncable、PositionSyncable、RespawnHandlerを実装します。 |
UdonHelper | UdonBehaviour用のヘルパーです。PositionSyncedHelperBaseを継承しています。Syncable、PositionSyncable、RespawnHandler、Interactable、PickupHandler、StationHandler、SyncableHandlerを実装します。 |
PickupHelper | VRCPickup用のヘルパーです。Pickupable |
StationHelper | VRCStation用のヘルパーです。IClientSimStationを実装します。 |
ObjectPoolHelper | VRCObjectPool用のヘルパーです。Syncable |
CombatSystemHelper | Udon CombatSetup用のヘルパー。IVRC_Destructibleを実装します。ヘルパーコンポーネントは、初期化時にプレイヤーオブジェクトへ直接追加されます。 |
SpatialAudioHelper | VRCSpatialAudioSource用のヘルパー。 |
最終更新: