UnityでScaleの基準点を変更するメモ

Unityで作成したオブジェクトのScaleを変更すると,

(Y軸方向に伸縮)
f:id:memonoana:20180713112235g:plain:w300

オブジェクトの中心を基準として上下に伸縮する.
この場合,Unityで作成したCubeは基準点がオブジェクトの中心になっているから.

これを,

f:id:memonoana:20180713112921g:plain:w300

こうしたい.

方法1:オブジェクトの親子関係を利用する

参考:UnityでObjectのPivotを変更する - 脳汁portal

  1. 空のオブジェクトを作成して,その子要素にScaleを変更したいオブジェクト(今回はCube)を設定する.

    f:id:memonoana:20180713113817p:plain

  2. EmptyのPositionが新しく基準にしたい位置(今回はCubeの底)に来るように,CubeのPositionを変更する.

  3. Emptyを伸縮させると,Cubeが底を基準に伸縮する.

方法2:モデリングツールでオブジェクトの基準点を変更する

そもそも”Unityで”ではなくて元も子もないんだけど,モデリングツールで基準点を好きな位置に設定すればいい.

Unity側では下の画像のところを「Pivot」にしておく.

f:id:memonoana:20180713125319p:plain

方法3:

何かあれば追加