メインコンテンツまでスキップ

Spawn時の位置・回転を調整する

SpawnOffset を使用すると、手元または Spawn Point へ移動するアイテムに、位置と回転のオフセットを追加できます。大きさや原点、正面方向が異なるアイテムを、同じ出現地点へ自然に配置したい場合に使用します。

設定手順​

  1. VRCObjectPool の Pool に登録したアイテムのルートGameObjectを選択する
  2. SpawnOffset コンポーネントを追加する
  3. Position Offset Y に、移動先から上下へずらす距離を設定する
  4. Rotation Offset に、移動先へ追加するX、Y、Z回転角度を設定する
  5. SpawnObjectExt からアイテムをSpawnし、位置と向きを確認する
配置場所

通常アイテムでは、SpawnOffset を VRCObjectPool に登録するルートGameObjectへ追加してください。Helper付きアイテムでは、Spawnルートに加えて Return Base Go または HG Base に指定したGameObjectも検索対象になります。それ以外の子GameObjectに追加した SpawnOffset は使用されません。

位置オフセットの方向​

Position Offset Y は、ワールドのY軸ではなく、移動先TransformのローカルY軸方向へ適用されます。

例えば Spawn Point が傾いている場合は、その傾きに合わせた上方向へアイテムが移動します。正の値でローカル上方向、負の値でローカル下方向へ移動します。

Move Item To Hand では手の位置を移動先として使用し、基準回転はありません。そのため、位置オフセットはワールドのY軸方向へ適用されます。

回転オフセット​

Rotation Offset は、X、Y、Zで指定した回転を移動先の回転へ追加するローカル回転です。Spawn Point の向きを基準に、アイテム固有の正面や傾きを調整できます。

適用される条件​

オフセットは、次のいずれかによってSpawn後の移動が行われる場合に適用されます。

  • Move Item To Hand が有効
  • 単一の Spawn Point が指定されている
  • 複数の Spawn Points から有効な移動先が選ばれる

移動先が指定されておらず、アイテムが VRCObjectPool の位置にそのまま出現する場合、位置・回転オフセットは適用されません。Return時にも適用されません。

Helperコンポーネントとの併用​

HGSpawnHelper または CompSpawnHelper を持つアイテムにも使用できます。HelperはPoolへ登録するルートGameObjectへ追加してください。SpawnOffset は同じSpawnルート、またはHelperの HG Base / Return Base Go に指定したGameObjectへ追加できます。両方にある場合はSpawnルートの設定が優先されます。

Helperの Move Delay 後に、オフセットを含む位置と回転へ移動します。

ObonEasyの設定を流用する​

ObonEasy v3.0以降を導入している場合は、SpawnOffset を追加せず、TrayItem または TrayItemManual の Position Offset Y と Rotation Offset をSpawn時にも使用できます。

必要なバージョン

この連携機能にはObonEasy v3.0以降が必要です。旧バージョンのObonEasyには対応していません。ObonEasyを導入していない環境では、TrayItem系コンポーネントの検索を行った結果が未検出となるだけで、Object Spawn Extensionは通常どおり動作します。

TrayItem系コンポーネントの検索対象は、アイテム構成によって異なります。

アイテム構成検索対象
Helperなしの通常アイテムVRCObjectPool に登録したSpawnルート
CompSpawnHelperReturn Base Go に指定したGameObject
HGSpawnHelperHG Base に指定したGameObject

子階層全体や、上記以外のPickupは検索しません。対象となるGameObjectへ TrayItem または TrayItemManual を追加してください。

通常アイテムでは、Spawnルートの SpawnOffset だけを検索します。Helper付きアイテムでは、Spawnルートに加えて Return Base Go または HG Base にある SpawnOffset も検索します。

Helper付きアイテムの優先順位は次のとおりです。

  1. Spawnルートの SpawnOffset
  2. Return Base Go または HG Base の SpawnOffset
  3. 同じBaseGoの TrayItemManual または TrayItem

複数のオフセットが加算されることはありません。

動作確認​

  1. Position Offset Y へ分かりやすい正の値を設定する
  2. アイテムをSpawnし、出現地点のローカル上方向へ移動することを確認する
  3. Spawn Point を傾け、傾きに合わせて位置オフセットの方向が変わることを確認する
  4. Rotation Offset を設定し、出現地点の向きを基準に回転が追加されることを確認する
  5. ObonEasyと連携する場合は、SpawnOffset を外した状態でもTrayItem系コンポーネントのオフセットが反映されることを確認する

各項目の詳細は SpawnOffset の設定項目 をご覧ください。