It seems that Unity has a kind of weird, kind of understandable approach to choosing where the transform tool will be shown for a given game object. It seems that Unity uses some kind of “average” position of all children.
For example, I created an empty GameObject, and placed it at (0,0,0), which is located within the small room in the screenshot below. When I do that, the transform tool appears right on it, at (0,0,0). I then added two child objects to the game object: two cubes. I move the cubes to far off positions a couple of hundred units away from (0,0,0). This results in the parent game object’s transform handle being placed somewhere between those two cubes. I’ve circled the cubes in this screenshot, and you can see where the handle is located (which is nowhere near any of the individual positions of any of the objects):
So, the question is, how can I avoid this behavior? Regardless of what I place into a GameObject, I want its handle to appear at the game object’s transform. So, if the object is at (0,0,0), I want the handle to appear there regardless position of any child objects.
Any ideas?