アバターイベント
これらのイベントは、プレイヤーのアバターに関する変更に対してUdonが反応できるようにするものです。
OnAvatarChanged
イベントを発生させたプレイヤーのVRCPlayerApiオブジェクトを返します。プレイヤーのアバターの読み込みが完了した時に呼び出されます。
永続化された目の高さ
プレイヤーのアバターが読み込まれると、プレハブの目の高さからの差異が同期され、OnAvatarEyeHeightChangedイベントが発生します。
VRCPlayerApiオブジェクトがlocalプレイヤーのものである場合、このイベント中に目の高さを取得すると、プレハブの高さが返されます。
VRCPlayerApiオブジェクトがremoteプレイヤーのものである場合、そのプレイヤーが新しい目の高さをまだ同期していない可能性があることに注意してください。この場合、返された値に依存すべきではありません。
OnAvatarEyeHeightChanged
イベントを発生させたプレイヤーのVRCPlayerApiオブジェクトと、以前の(または以前同期されていた)目の高さをメートル単位で表すfloatを返します。プレイヤーが別のアバターに変更した際や、アバタースケーリングシステムを通じて目の高さが変更された時に呼び出されます。
初回のアバター読み込み
local または remote ユーザーがワールドに参加した際、そのユーザーに対して最初に受信される以前の目の高さの値は 0 になる場合があります。
アバターの変更、remote プレイヤー、およびイベントの順序
local ユーザーがアバターを変更し、保存された目の高さ(プレハブの高さとは異なる値が保存されている場合)を適用する際、このイベントは保存された高さに対してのみ実行される必要があります。
remote ユーザーがアバターを変更し、保存された目の高さ(プレハブの目の高さとは異なる値が保存されている場合)を適用する際、このイベントは複数回実行される可能性があります。
remote プレイヤーの場合、そのプレイヤーによって新しい目の高さが同期されるたびに、このイベントが送られてきます。つまり、OnAvatarChanged イベントより先に OnAvatarEyeHeightChanged イベントを受信する可能性がありますが、OnAvatarEyeHeightChanged イベント自体が順序を違えて送られてくることはありません。
この機能の詳細については、Player Avatar Scaling を参照してください。
最終更新: