ゲーム

【Unity歩行アニメーション】Unityで自作ゲーム:part1

更新日:

Unityで歩行アニメーションを作ろう!【自作ゲーム編part1】

ゲームを作っているけどゲームを作っていないんだ。

僕がUnityに触れて5日ほど経過し、そこそこUnityが分かるようになってきたのでpart1という形で書いていこうと思います。

やっぱり0から作るのは厳しくて、萎えるときもあります。

ずっと1日中作り続けて、ゲームを作っているはずなのにやっていることは、ほとんどデバッグで、正直自分でも何をしているかわからなくなる時だってありますし、

自分がこう動いてほしいと思うように動くことを願いながらコードを書いても書いてもエラーばかりで何回も1から作り直すことだってありました。

でも上手くいって動いてくれた時は感動でしかありません。
ゲームを作っているようで作っていない。そんな感じに耐えられる人がプログラミングができる人になるんだろうなぁと思いながら今日もゲームを作ります。(何言ってんだろう)

で、どんなゲームを作るかというと、、、
『RPG』を作っていこうと思います!
てか、RPGを知らない間に作り始めていました。。

ちょっと3Dのゲームは厳しそうなので、2Dで行くならRPGしか思いつかなかったので。。

前回紹介した、友達から借りた『Unityの教科書』は、2Dの部分はコードを書きながら練習を終えました。

実際にこのRPGを作る過程で、この教科書めっちゃ便利なのでおすすめです。
基本エラーが出たら教科書で調べつつ、修正。って感じで今のところ問題なさそうです。

前回の『Unityってなんだ』って回はこちら



Unityをダウンロードしましょう(割愛)

Unityを公式サイトからダウンロードしましょう。

Unityがダウンロードできたら(割愛)、Unityを起動します。

そんで、2Dを選択して適当に名前を決めて作成。

こんな画面が出てくると思います。(配置いじったのでちょっと違うかも)



【本題】歩行アニメーションを作ろう

歩行グラフィックをダウンロードしよう

このままではなんもゲームの素材がないのでなにも作れません。
無料で良いのでフリー素材をダウンロードします。
(歩行グラフィック素材って調べればいろいろ出てくると思います)
勉強のためなら無料素材でいいと思います。

まずはRPGで活躍する、メインのキャラクターを作成しますよ~

フォルダーを、右クリック→criate→Folderで作成します。

『char-1』ってファイルを作りました。(名前センスないのでこれからもひどいかもです)

そのファイルにダウンロードした歩行アニメーションをコピペです。
歩行アニメーションはそれぞれの方向に3つのアニメーションがあればOKです。

切り取って使えるようにしよう

このままでは使えないので、切り取る必要があります。

↑ななめ方向に歩いているのは今回使わないのでなくてもOKです。

クリックすると右側に『Inspeter』欄が登場します。
その欄の

『Texture Type』を Sprite(2D and UI)
『Sprite Mode』を Multiple

『Pixels Per Unit』は個人のサイズに合わせてください。
()
そして忘れずに一番下の『Apply』をクリック。

『Sprite Editor』をクリックするとこんな画面が出てくると思います。

左上の『Slice』をクリックし、『Type』をGrid By Cell Countにします。

この画像では6×4の数(横に6人縦に4人)なのでColumnRow』のC6R4にし、Sliceすると良い感じに切り取れると思います。
そして忘れずに『Apply』します。

そして元の画像の◀をクリックすると上手く切り取れているかと思います。

この画像をうまいこと表示させて歩行アニメーションを完成させるということです。



メインのキャラを作ろう

まずはメインとなるキャラを作成していきます。
『Hierarchy』欄にさっきSliceした画像をコピペします。
すると左の画面に実際に登場します。
(ここで『Pixels Per Unit』でサイズを調節すると良いです)

↑こんな感じで登場(なんかキャラ荒くね)

アニメーションを取り付けよう

この画像にアニメーションを追加し、このキャラが動いたときに適切な画像を見せる。ってことをします。
要するに、左に動くときは、左に動く時の画像、上に動く時は、上の画像を表示させる。って感じです。

メインキャラを触った状態で、左上の『Window』→『Animator』→『Animator』を選択します。

『criate』をクリックしフォルダーを作成します。
『Add property』で『Sprite Rinderr』の『Sprite』をクリックでプロパティが追加されます。

ここでのプロパティ名前は
上下左右の違いの分かる名前の方が良いです。
『up-char』『down-char』とかですかね()

動く→止まる→動く→止まる
の順に画像(Sliceしたやつ)をコピペして4つのモーションを作ります。これを上下左右作ります。
左上のプロパティ名をクリックすると新しくプロパティが追加できます。



Blend Treeを使おう

4つ完成したら『Project』のフォルダー欄にさっき作ったプロパティ以外に別のものが追加されていると思います。そいつをクリック。

するとこんな感じのやつが出てくると思います。

何もないところで『右クリック』→『Create State』→『From New Blend Tree』をクリックし、ブロックを作成します。
そのブロックを右クリックで『Set as Layer Default State』を選択し、矢印がそのブロックに向けばOKです。(色のついていないブロックは消してOKです)

作った『Blnd Tree』をクリックし、
『Inspeter』欄の『Blend Type』を2D simple Directionalにし、下の『Parameter』を左側を『x』右を『y』にします。

そして『List is Empty』の+を押して『Add Motion Field』を押します。これを4個作ってモーションを4つ作ります。

『Motion』にはそれぞれのさっき作った『down-char』とかのプロパティを入れて下さい。
PosXとかPosYとかは、
それぞれが動いたときに起動してほしい座標を入力します。
『down-char』は下に動いたときに使うプロパティですから、PosXは0、PoxYが-1でOKです。
PosXx軸、PosYがy軸みたいな感じです。

そして、左の『Parameter』欄の+ボタンから『Float』を選択し『x』と『y』それぞれの名前のParameterを作成してください。
これは忘れずに!(僕は忘れてて半日間なんで動かないのか無駄に模索していました笑)

これができたら次は、実際に『キャラを動かすスクリプト』を書いていきます。
それはまた次回で!

-ゲーム

Copyright© あかほんブログ , 2021 All Rights Reserved Powered by STINGER.