VRChat 非公式日本語ドキュメント

イベントノード

Udonノードのうち、「イベント」と見なされるものの一覧です。

スクリプトでイベントを使用すると、アクションを検知して一連の動作やロジックを開始させることができます。入力イベントについては専用のページがあります。グラフ内のイベントにジャンプするには、グラフサイドバーで該当するイベントをクリックしてください。

以下のすべてのノードには、ロジックが必要とする場合にフローノードが用意されています。

注意

ネットワークに関連するより詳細なイベントは、ネットワークコンポーネントのページに記載されています。

Interact

ローカルプレイヤーがこのGameObjectをインタラクトした時に発生します。

  • プレイヤーは、ColliderコンポーネントとUdonBehaviourコンポーネントを持つGameObjectに対してのみインタラクトが可能です。
  • プレイヤーに2D UIをインタラクトさせたい場合は、VRC Ui ShapeとButtonコンポーネントを使用してください。

OnDrop

ローカルプレイヤーがこのオブジェクトを持ち上げた後に離した時に発生します。

OnPickup

このオブジェクトがローカルプレイヤーによって拾われた時に発生します。

OnPickupUseDown

ローカルプレイヤーがこのオブジェクトを持っている状態で「Use」ボタンを押した時に発生します。ボタンが押された瞬間に発生します。デスクトップモードでは「Auto Hold」が必要です。

OnPickupUseUp

ローカルプレイヤーがこのオブジェクトを持っている状態で「Use」ボタンを離した時に発生します。デスクトップモードでは「Auto Hold」が必要です。

OnPlayerJoined

出力: player - VRC.SDKBase.VRCPlayerApi

いずれかのプレイヤーがインスタンスに参加した時に発生します。参加した player を出力します。

インスタンスに参加した際、自分自身を含め、インスタンス内にいるすべてのプレイヤーに対して OnPlayerJoined が実行されます。他のプレイヤーがインスタンスに参加した場合は、参加したそのプレイヤーに対してのみ OnPlayerJoined が実行されます。

OnPlayerLeft

Event_OnPlayerLeft

出力: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のいずれかのプレイヤーが退出した時に発生します。退出した player を出力します。

OnPlayerRestored

Event_OnPlayerRestored

出力: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のプレイヤーの永続データがすべて読み込まれた後にトリガーされます。これには、すべての PlayerData および PlayerObjects が含まれます。データが読み込まれた player を出力します。

インスタンスに参加した際、自分自身を含むインスタンス内のすべてのプレイヤーに対して OnPlayerRestored が実行されます。他のプレイヤーがインスタンスに参加した場合は、参加したプレイヤーに対してのみ OnPlayerRestored が実行されます。

OnStationEntered

Event_OnStationEntered

ローカルプレイヤーがこのオブジェクトのステーションに入った時に発生します。

OnStationExited

Event_OnStationExited

ローカルプレイヤーがこのオブジェクトのステーションから出た時に発生します。

OnVideoEnd

Event_OnVideoEnd

このオブジェクトのビデオプレイヤーが再生を終了した時(ビデオの終了、またはプレイヤーの操作による終了のいずれか)に発生します。

OnVideoError

Event_OnVideoError

出力: videoError - VRC.SDK3.Components.Video.VideoError

ビデオプレイヤーがビデオの読み込み中にエラーを検出した時に発生します。

OnVideoLoop

Event_OnVideoLoop

ループが有効な場合、ビデオプレイヤーがループを完了した時に発生します。

OnVideoPause

Event_OnVideoPause

このオブジェクトのビデオプレイヤーが一時停止された時に発生します。

OnVideoPlay

Event_OnVideoPlay

このオブジェクトのビデオプレイヤーが再生を開始した時(キュー内の新しいビデオの開始、一時停止の解除、またはプレイヤーの操作によるもの)に発生します。

OnVideoStart

Event_OnVideoStart

ビデオプレイヤーが停止状態から再生を開始した時に発生します。

OnVideoReady

Event_OnVideoReady

ビデオプレイヤーが新しいビデオを読み込んだ時に発生します。

プレイヤーイベント

OnPlayerTriggerEnter

Event_OnPlayerTriggerEnter

Outputs: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のプレイヤーのカプセルコライダーがトリガーコライダーに侵入した時に発生します。

OnPlayerTriggerStay

Event_OnPlayerTriggerStay

Outputs: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のプレイヤーのカプセルコライダーがトリガーコライダー内に存在する間、毎フレーム発生します。

OnPlayerTriggerExit

Event_OnPlayerTriggerExit

Outputs: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のプレイヤーのカプセルコライダーがトリガーコライダーから出た時に発生します。

OnPlayerCollisionEnter

Event_OnPlayerCollisionEnter

Outputs: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のプレイヤーのカプセルコライダーがコライダーに接触した時に発生します。

OnPlayerCollisionStay

Event_OnPlayerCollisionStay

Outputs: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のプレイヤーのカプセルコライダーがコライダー内にある間、毎フレーム発生します。

OnPlayerCollisionExit

Event_OnPlayerCollisionExit

Outputs: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のプレイヤーのカプセルコライダーがコライダーから出た時に発生します。

OnPlayerParticleCollision

Event_OnPlayerParticleCollision

Outputs: player - VRC.SDKBase.VRCPlayerApi

パーティクルシステムの「Collision」および「Send Collision Messages」がオンになっている場合、パーティクルがインスタンス内のプレイヤーのカプセルコライダーに衝突すると発生します。

OnPlayerRespawn

Event_OnPlayerRespawn

Outputs: player - VRC.SDKBase.VRCPlayerApi

ローカルプレイヤーがメニューから「Respawn」をクリックしてリスポーンした時に発生します。

OnPersistenceUsageUpdated

Event_OnPersistenceUsageUpdated

Outputs: player - VRC.SDKBase.VRCPlayerApi

プレイヤーの永続化データ使用量が更新された時に発生します。

OnPlayerDataStorageExceeded

Event_OnPlayerDataStorageExceeded

Outputs: player - VRC.SDKBase.VRCPlayerApi

プレイヤーがプレイヤーデータストレージの上限を超えた時に発生します。

OnPlayerDataStorageWarning

Event_OnPlayerDataStorageWarning

Outputs: player - VRC.SDKBase.VRCPlayerApi

プレイヤーがプレイヤーデータストレージの上限に近づいた時に発生します。

OnPlayerObjectStorageExceeded

Event_OnPlayerObjectStorageExceeded

Outputs: player - VRC.SDKBase.VRCPlayerApi

プレイヤーがプレイヤーオブジェクトストレージの上限を超えた時に発生します。

OnPlayerObjectStorageWarning

Event_OnPlayerObjectStorageWarning

Outputs: player - VRC.SDKBase.VRCPlayerApi

プレイヤーがプレイヤーオブジェクトストレージの上限に近づいた時に発生します。

OnScreenUpdate

Event_OnScreenUpdate

Outputs: data - VRC.SDK3.Platform.ScreenUpdateData

ローカルプレイヤーがモバイルデバイスでワールドに初めて入った時、およびデバイスの向きが変更された時に発生します。以下の値を持つ ScreenUpdateData 構造体を出力します。

  • type - ScreenUpdateType - 現時点では OrientationChanged のみですが、将来的に拡張される可能性があります。
  • orientation - VRCOrientation - VRC.SDKBase.Platform.VRCOrientation enumとしてのプレイヤーのデバイスの向き。値は Landscape または Portrait です。
  • resolution - Vector2 - Vector2 構造体としてのプレイヤーのデバイスの解像度。

OnInputMethodChanged

Event_OnInputMethodChanged Outputs: inputMethod - VRC.SDKBase.VRCInputMethod ローカルプレイヤーがキーボード、マウス、コントローラーなどの異なる入力方法を使用した時に発生します。

OnLanguageChanged

Event_OnLanguageChanged Outputs: language - string ローカルプレイヤーが自身の表示言語を更新した時に発生します。

OnPlayerSuspendChanged

Event_OnPlayerSuspendChanged

Outputs: player - VRC.SDKBase.VRCPlayerApi

インスタンス内のいずれかのプレイヤーのデバイスがサスペンド(一時停止)状態になった時に発生します。デバイスがスリープモードに入るか、別のアプリに切り替わった場合にサスペンド状態とみなされます。サスペンドされたプレイヤーについては、復帰時にこのイベントが発生します。それが復帰イベントかサスペンドイベントかを確認するには、VRCPlayerApi.isSuspended をチェックしてください。

サスペンド状態の間、プレイヤーがVRChatを再起動するまで、デバイス上でUdonコードは実行されず、ネットワークイベントにも応答しません。

VRChatでマルチプレイヤーインタラクションを作成する際は、Udonコードが意図した通りに動作し続けるよう、サスペンド状態のプレイヤーに対して適切に対処する必要があります。例えば、重要なオブジェクトの所有権をサスペンド状態ではないプレイヤーに移行させるといった対応が考えられます。

プラットフォームに関係なく、デバイスはいつでもサスペンド状態になる可能性があることを考慮してコードを記述してください。現時点ではPCプレイヤーがサスペンド状態になることはありませんが、これを前提とした設計は避けるべきです。

OnVRCPlusMassGift

Event_OnVRCPlusMassGift

Outputs:

  • gifter - VRC.SDKBase.VRCPlayerApi
  • numGifts - int

インスタンス内のいずれかのプレイヤーがギフトボムを使用した時に発生します。

OnVRCCameraSettingsChanged

Event_OnVRCCameraSettingsChanged

Outputs: camera - VRC.SDK3.Rendering.VRCCameraSettings

ユーザーが「Near Clip Override」や「Field of View」など、VRChatのグラフィック設定で特定のオプションを変更した時に発生します。

スクリプトから VRCCameraSettings を通じて値を直接変更しても、このイベントは発生しません!同様に、カメラの PositionRotation もほぼ毎フレーム変化するため、これらが変更されてもイベントは発生しません。

渡される camera オブジェクトは ScreenCamera または PhotoCamera のいずれかを参照します(VRCCameraSettingsを参照)。なお、ユーザーが PhotoCamera のズームスライダーを使用している最中や、Dollyパスによってズーム値が調整されている間は FieldOfView の値が変化し続けるため、このイベントは毎フレーム発生しますので注意してください。

VRChatウィンドウのリサイズを含め、画面解像度を変更した場合も、毎フレームこのイベントが呼び出されます。パフォーマンスへの影響を避けるため、処理は最小限に抑えることを推奨します。

このイベントは1フレームに複数回発生する可能性があります。

OnVRCQualitySettingsChanged

Event_OnVRCQualitySettingsChanged

ユーザーが VRC.SDK3.Rendering.VRCQualitySettings 内の1つ以上の値に影響を与えるグラフィック設定を調整した時に発生します。

OnVRCCameraSettingsChanged と同様に、このイベントは頻繁に発生する可能性があるため、処理を軽量に保つことを推奨します。

高度な注意点

このリスト内のすべてのノードは、型として System.Void を持ちます。

最終更新: