模索中:2Dでモーション(アニメ)付けする方法


Ayano(メディックP)です。
文章が長くなりがちなまとめ下手ですが、よろしくお付き合いくださいませ。

とりあえずは動かせるけども……

昨日うpした画像のプレイヤーは、動かせることは動かせます。
ジャンプもするし、重力もそこそこ乗るかんじだし。

ただ、
モーション付けというか、入力に対応するアニメづけができてない。

ちなみに、アニメーション自体は、すごく簡単に再生できます。
でも、
うちは現在、常に手足を振ってるだけの状態しか無い。
(そんな素材を作ったのはわたしなんだけども……)

色々してみて、
アニメーター(Animator)で、状態の条件設定すればよさそうだと思った。
こんなかんじに。インスペクタで設定もちゃんとそれっぽくしたよ。

Animator

Animator

けど、入力に対応したアニメーションが再生されない。

それで、さらに調べたり、チュートリアル動画を見たりして、気づきかけてる今。

もしかして、CharacterControllerをアタッチするだけでは、どうにもならないの!?;´∀`)

rigidbody+スクリプトでやるか、CharacterControllerを使うか?

AnimatorとCharacterController上だけで、
入力に対応するアニメを再生する方法は、たぶん、無いと思いはじめてる今。

Unity4.5にはCharacterControllerという便利なものがあって、
これをアタッチするだけで、とりあえずは動かせてしまいます。
私は最初に触ったとき、直感でコレを見つけてしまったために、
キャラを動かしてアニメまで対応させるには、
このコンポーネントの設定をいじるだけでおkだと勘違いしてたかもしれない。

つまり、コーディングする必要がでてきたかんじですね。

「そういうものです、当たり前でしょ」と、ツッコミを入れたくなるあなた。
あなたは、きっとプログラムとかできちゃう人なんだろうなって思います。
あるいはとてもカンが良いのかもしれないし、頭が良いのです。

一方私は、あんまり……なせいか、勘違い乙ってましたww

でもまーなんやかんやで、今日調べたかんじだと、
rigidbody+スクリプトの方法があるじゃないか。というところまでは理解したかな。

たとえば、
Unity公式チュートリアル「2Dシューティング」 第02回 プレイヤーの移動
http://japan.unity3d.com/developer/document/tutorial/2d-shooting-game/game/02.html
ここのスクリプトをそのまま入れてみると、
とりあえずシューティングの自機みたいな動きはさせられました。

うん。……´∀`)……。

…………;´∀`)…………コレジャナイ感……。

……ま、まだまだ! これからですからねっ!;;;´∀`);;

なにがしたいかっていうと

そんなわけで、私がやろうとしてるのは、
サイドビューで左右自由に動けてジャンプができるやつです。
(マリオ的な動きともいう)

で、それ自体はCharacterControllerで即可能。

でも、たとえば、
左入力したら左向きのアニメを再生しながら移動とか、
まあ、巷にあふれるアクションゲームの体裁を取りたい。

となったら、
多分rigidbody+スクリプトの方法が良いのかな、と。

あるいは、CharacterControllerの中身を改造とかするのアリなんですかね?
なんかだめというか、危険な気が、直感的にはするのですけど。

最後に

これって誰得記事というか、ただの日記デスヨネー;´∀`)

ご意見・ご感想・アドバイスなど、お気軽に!
今後とも、どうぞ、よろしくおねがいします。

The following two tabs change content below.
Ayano (メディックP)
作詞/作曲、イラスト描き、動画制作、ゲーム制作などしています。ボカロ曲はAyano(メディックP)という名前で発表しており、大阪・東京で活動するアイドルさんを中心に楽曲提供するときは、月野ネリコという名前で2017年より活動しています。