おもちゃラボ

Unityで遊びを作ってます

【Unity】XキーとZキーのショートカット使ってますか?

Unityのショートカットキーの中でもあまり知られていない(?)
XキーとZキーのショートカットを紹介したいと思いますー!

Xキー:World/Localの切り替え

オブジェクトを移動させるときにワールド座標系に従って動かすのか、ローカル座標系に従って動かすのかを切り替えることができます。

カメラの注視点は変えずにもう少し被写体に寄せたいんだけど・・・。
こんなときカメラが傾いていると、X方向に少し動かして、Z方向にも同じだけ動かして、と細かい微調整が必要になります。

f:id:nn_hokuson:20170317192453j:plain

そんなときにはXキー!
カメラの視線方向にしたがってカメラを移動できるようになります。

f:id:nn_hokuson:20170317192955g:plain

Zキー:Pivot/Centerの切り替え

オブジェクトを回転させるときの中心座標にピボットを使うか、オブジェクトの中心座標を使うかを切り替えることができます。

2Dゲームを作っていると、「足場を回転させてつなぎたい」ということが時々あります。

f:id:nn_hokuson:20170317193054j:plain

普通に回転させるとオブジェクトの中心座標が回転の中心になるので
足場がつながらない!なんてことになります。

f:id:nn_hokuson:20170317193127g:plain

そんなときにはZキー!
これで回転の中心をPivotに切り替えられ、簡単に足場をつなぐことが出来るようになります。

f:id:nn_hokuson:20170317193322g:plain

【Unity】ユニティちゃんをMecanimで歩かせる方法

ユニティちゃんをAsset Storeからダウンロードしてきたけれども、動かすのがむずかしい、locomotionはなんか複雑だし・・・という方は多いと思います。
locomotionは一通りの動きが揃っていて便利なのですが、簡単なアニメーションの実験をしたい場合は逆に不便だったりします。

この記事ではMecanimを使って簡単にユニティちゃんを歩かせる方法を紹介します。

f:id:nn_hokuson:20170315191111j:plain

ユニティちゃんのAnimation Controllerを作る

まずはAsset Storeでユニティちゃんをダウンロードしましょう。ダウンロード先は下記のURLになります。

f:id:nn_hokuson:20170315192332j:plain
https://www.assetstore.unity3d.com/jp/#!/content/18705

続いて、Assets/UnityChan/Modelsの中に入っているunitychanオブジェクトをシーンビューにドラッグ&ドロップして配置してください。

f:id:nn_hokuson:20170315191111j:plain

このユニティちゃんをMecanimで動かすために、ユニティちゃんにAnimatior Controllerをアタッチします。
プロジェクトビューで右クリックし、「unitychan」という名前のAnimator Controllerを作成して(名前は任意です)、ユニティちゃんのインスペクタに設定してください。

f:id:nn_hokuson:20170315193556j:plain:w500

これでユニティちゃんがuniychan Animator Controllerに従って動くようになります。
このAnimator Controllerの中身をMechanimで設定していきます。

ユニティちゃんが歩くようにMechanimを設定する

先ほど作成したunitychan Animator ControllerをダブルクリックしてMechanimの画面を開いてください。

アニメータービューで右クリックし、「Create State」→「Empty」を選択します。

f:id:nn_hokuson:20170315191151g:plain

インスペクタで、作成したステートの名前を「Walk」に変更し、Motionの欄は「WALK00_F」を選択してください。

f:id:nn_hokuson:20170315191402p:plain:w400

これにより、WalkステートではWALK00_Fのアニメーションが再生されるようになります。(FはたぶんForward・・・なはずです)

実行してユニティちゃんを歩かせる

これでMecanimの設定が完了したので、ゲームを実行してユニティちゃんを歩かせてみましょう。

f:id:nn_hokuson:20170315194506g:plain

歩くアニメーションが再生されましたね!
今はユニティちゃんの位置を移動するプログラムを書いていないので、ムーンウォーク状態ですが・・・

Nav Meshを使って歩かせる

とりあえずユニティちゃんを歩かせたいので、Nav Meshを使って手っ取り早く歩かせてみましょう。

Nav Meshは移動可能なゾーンとゴール地点を指定すれば、自動的に経路探索をしてオブジェクトを最短経路で動かすことができる仕組みです。

Nav Meshをの使い方はこちらの記事で紹介しています。合わせて参照してくださいね〜。

nn-hokuson.hatenablog.com


ここでは、フロアとキューブをstaticオブジェクトに指定して、NavMeshを作成しました。

f:id:nn_hokuson:20170315191827j:plain

ユニティちゃんを歩かせると、こんな感じになります。このようにMecanimとNav Meshを組み合わせれば、手っ取り早くユニティちゃんを歩かせることができます。
ユニティちゃんには歩くアニメーションだけではなく、走るアニメーションや、戦うアニメーションも用意されているので利用してみて下さい!

f:id:nn_hokuson:20170315194741g:plain