Easily edits a 2D Sprite while maintaining it's world position, including its children objects
- Download SpritePivotEditor.cs
- Place in an Editor folder in project
- Select a gameobject with a SpriteRenderer and a Sprite set
- Go to Tools > Set Sprite Pivot
- Then in the scene editor, click where you want the pivot to be set
- (optional) in the window that opens, you can uncheck if you want it to not automatically set new local positions for the object and its children to maintain world positions.
Note: It helps to visualize the pivot point by making sure the Tool Hande Position is set to Pivot instead of Center.