Skip to main content

Troubleshooting

Compilation errors occur after importing​

  • Confirm that both ObjectSpawn and ObjectSpawnExtension were selected when importing the unitypackage
  • Confirm that both PurabeWorks/ObjectSpawn and PurabeWorks/ObjectSpawnExtension exist in the Project window
  • Check the first error shown in the Unity Console

Nothing appears when using the Spawn switch​

  • Confirm that VRC Object Pool is configured on SpawnObjectExt
  • Confirm that GameObjects are registered in the Pool array of VRCObjectPool
  • Confirm that not every object in the Pool is already visible
  • Check whether the Unity Console contains the message "VRC Object Poolを登録してください"

See Configure VRCObjectPool for instructions on configuring the Pool array.

Objects in the Pool are not visible when the world starts​

Objects registered in VRCObjectPool are hidden when the world starts.

They are expected to remain hidden until they are displayed with a Spawn switch.

An object does not become hidden in the Return trigger​

  • Confirm that Is Trigger is enabled on the Return trigger's Collider
  • Confirm that Layer on ReturnObjectExt matches the layer number of the GameObject containing the Collider that entered the trigger
  • Confirm that the target GameObject is registered in a VRCObjectPool reachable from Pools
  • If Pools is empty, confirm that Reference is configured

An object does not move to a single Spawn Point​

  • Confirm that the destination mode is 単一 (Single)
  • Confirm that Move Item To Hand is not enabled
    • When enabled, movement to the player's hand takes priority
  • Confirm that the correct Transform is assigned to Spawn Point
  • Increase Spawn Delay Frames gradually for normal objects or Move Delay for items using a helper component

An object does not move to the player's hand​

  • Confirm that Move Item To Hand is enabled
  • Increase Spawn Delay Frames gradually for normal objects or Move Delay for items using a helper component

Position and rotation offsets are not applied on Spawn​

  • Confirm that a destination is configured with Move Item To Hand, a single Spawn Point, or multiple Spawn Points
  • For a normal item, confirm that SpawnOffset or the TrayItem component is on the Spawn root
  • For an item using a helper, confirm that SpawnOffset is on the Spawn root or Return Base Go / HG Base, and that the TrayItem component is on Return Base Go / HG Base
  • Check whether a higher-priority SpawnOffset exists on the Spawn root or helper BaseGo
  • When using ObonEasy integration, confirm that ObonEasy v3.0 or later is installed

The entire child hierarchy is not searched. See Adjust position and rotation when spawning for search targets and priority details.

Some objects remain visible after Reset​

  • Check Pools on the ReturnObjectExt assigned to All Reseter
  • Confirm that the target Pool is not outside the parent GameObject registered in Pools
  • If Reference is used, check Pools on the referenced component

Multiple spawn points cannot be selected​

  • Confirm that the component is SpawnObjectExt, not SpawnObject
  • Confirm that Move Item To Hand is disabled
  • Change the destination mode to 複数 (Multiple)
  • Confirm that at least one valid Transform is registered in Spawn Points

An object does not move to the nearest point​

  • Confirm that Spawn Points contains no unassigned entries
  • Check the test player's position and the distance to each point
  • Increase Spawn Delay Frames gradually for normal objects or Move Delay for items using a helper component

The root remains visible after returning a child Pickup​

  • Confirm that the root registered in the Pool contains CompSpawnHelper or HGSpawnHelper
  • Confirm that the helper component is on the same GameObject registered in the Pool
  • Confirm that Layer on ReturnObjectExt matches the layer of the GameObject containing the Collider that entered the trigger
  • Confirm that the VRCObjectPool containing the root is reachable through Pools or Reference

CompSpawnHelper does not move to the correct position​

  • Confirm that Return Base Go is assigned
  • Confirm that the intended GameObject is assigned to Return Base Go
  • Increase Move Delay gradually
  • When using VRCObjectSync, check ownership and synchronization with two clients

HGSpawnHelper does not work​

  • Confirm that v7.x.x or v8.x.x is selected to match the item you use
  • Confirm that HG Base contains the corresponding Base script
  • Click AUTO SET and confirm that the references are assigned correctly
  • For v8.x.x, confirm that HG Base contains VRCObjectSync
  • For v8.x.x, confirm that the same root GameObject as HGSpawnHelper contains ResetSwitchHelper
  • For v7.x.x, confirm that HG Sync is assigned and that the GameObject contains VRCObjectSync
  • Check the Unity Console for errors from HGSpawnHelper

An event is not called​

  • Confirm that the corresponding notification setting is enabled
  • Confirm that the receiving method is parameterless and public
  • Confirm that the event name exactly matches OnPurabeSpawn or OnPurabeReturn
  • For item notifications, confirm that the receiving UdonBehaviour is directly attached to the root GameObject
  • For external notifications, confirm that the recipient is registered in External Event Targets
  • Confirm that Spawn or Return itself succeeds

An event does not run on other clients​

Event notifications run only on the client that performed the operation. To run logic on every client, call SendCustomNetworkEvent or similar logic on the receiving side.

Some components are not migrated​

  • Confirm that the same GameObject does not already contain the destination SpawnObjectExt or ReturnObjectExt
  • Review warnings in the migration window
  • Confirm that an active scene, rather than a Prefab Asset, is the migration target
  • Confirm that the scene was saved after migration

If the issue persists​

Contact Purabe Works on BOOTH and include the following information.

  • Unity version
  • VRChat SDK version
  • Object Spawn System and Object Spawn Extension versions
  • Full error text shown in the Unity Console
  • Inspector screenshots of the relevant components
  • A Hierarchy screenshot from the root registered in the Pool to the Pickup
  • Steps that reproduce the problem