How can I ensure that all prefabs dragged from the assets to the scene are placed at (0, 0, 0) relative to their parent?
09:53 28 May 2025

I have a handful of prefabs in my project's assets which I am frequently dragging into and out of the scene in order to test them sequentially after changing the code in their attached scripts. They are always the child of an empty transform used as a reference for positioning. At runtime, they will be instantiated, so I can easily define the instantiation position. However, in the Unity editor, in scene view, they are being placed at X-0.96864, Y0.1720003, Z-1.42036 consistently. This is inconvenient as, in order to go on to test the prefabs in play mode, I must adjust their position relative to the parent transform to X0, Y0, Z0 each time. Is there a way to fix this?

I have tried redefining the prefab from 'first principles' by deleting it from the assets, reconstructing it in the scene, then dragging it from the scene into the assets. This led to the same issue, though the exact location the prefab appears when dragged from assets to scene is now different (still not convenient). When I reconstructed it, I tried both doing so as a child of the reference transform, and as a top-level game object.

c# unity-game-engine position unity-editor prefab