#初めにUnityHubから新規プロジェクトを作る
まずは、プロジェクトの右上から新規作成をクリックします
この時にテンプレートを[2D]をクリックして設定をして、プロジェクト名を変更します(好きなプロジェクト名で大丈夫) 変更をしたら作成ボタンをクリックします。(2Dは2D、3Dは3Dのゲーム開発に合わせて設定する事)
プロジェクトを開くと、このようになります。もし、このUnity Editor Update Checkが出たら、バツボタンをクリックして消してください。
#Asset Storeから動かすキャラクターなどをインポートする
ステージ作成をするのとキャラクターの配置をしていきたいので、真ん中にある[Asset Store]をクリックしてください。クリックしたらこのような画面になります。
検索で今回は「bandit」というAssetを使います。(FREEは無料のAssetです)これをクリックします。
インポートをクリックしたら、また画面がこのように出て、矢印も全部付いていると思うので、そのままインポートをクリックしてください。
Asset Storeは使わないので、マウスの右クリックのメニューから[Close Tab]で、一旦閉じましょう。
無事にAsset Storeの作業は終わりました。
###Asste Storeからインポートした[Asste]のDemoについて(初めて使う人は、大事な事)
[Asste]のDemoでキャラクターなどの動きなどが確認できる。(Demoが無いとAsste Storeに出せないルールがある)
左下のプロジェクトビューのAsstesの[Bandit-Pixel Art]を押したら、真ん中にDemoのファイルが出るので、クリックします。
Demoのシーンを開くとこのようにキャラクターを確認できます。
確認ができたら、再生を止めて左下のAssetsのところにある[Scenes]をクリックします。
次に、この画面になるので、SampleSceneをクリックします。
画面の一番下にある黄色の警告文は、気になると思うので消しときましょう。消すのには、オレンジに囲っている左下のConsoleをクリックします。
次にこのような画面になるので、左にある[Clear]をクリックします。
黄色の警告文は[Clear]をすると消えるのですが、赤色のびっくりマークは、エラーなので、ちゃんと解決しないと消えないので、それはまた違うところで説明します。[Console]の隣の[Project]をクリックして戻しましょう。
#ステージ作成
左下のAssetsの[Bandit- Pixel Art]をクリックします。
次に左上にあるHierarchyの下の[Create]をクリックします。
クリックをしたら、[2D Object]の[Tilemap]を選択します。
このようにTilemapが出てくるので、Tilemapクリックで選択したら、Inspectorのところが表示されます。
真ん中のゲームビューからシーンビューに切り替えるとこのようになります。
シーンビューは作成する画面になり、(背景の配置など)ゲームビューは完成した時の画面になります。
次に[Tile Palette]という背景を貼りたい(Tile Paletteはペイントする筆のイメージ)事をしたいので、画面の真上辺りにある「Window」をクリックして、「2D」の[Tile Palette]を選びたいのですが、赤の矢印にあるUnityのバージョンによって[Tile Palette]が出てこない事があるので
「Window」にある[Package Manager]を選択します。
開くとこのような画面になるので、[2D Tilemap Editor]をクリックして右下のところが[Remove](取り除く)になっていたらOK。 もし、[Import](取り入れる)だった場合は、クリックしてください。
ここまで出来たら、[Remove]の真上にあるバツボタンをクリックして戻してあげましょう。
[Import]が出来たら、画面の真上辺りにある「Window」をクリックして、「2D」の[Tile Palette]を選びます。
開いていない方は、白矢印の[EnvironmentPalette]をクリックしたら、複数選択ができるようになり開く事が出来ます。
この状態で試しに、絵の具の筆みたいな物を選択して、ブロックみたいな石をクリックします。
見辛いかもしれないのですが、薄い白の線がブロックの周りを囲んでいたら選択されているのでOKです。
シーンビューの画面上にマウスの矢印を持ってくるとこのようになります。
さらにクリックした状態ですると、ブロックを配置する事が出来ましたね。
この時に、ゲーム画面が16:10の場合1920x1080に、したいと思う事があればこのようにしてあげると出来ます。(今回は省略させていただきます)1.赤矢印をクリック、2.黄色の画面が出てきて、3.赤の囲んでいる辺りに、[+]があるのでクリック、4.水色のところの画面が出てくるので[Width & Height]のところの空白に[1920] [1080]の数字を入れて[OK]をクリックしてあげると設定する事が出来ます。
これで画面のサイズを合わせられてブロックも配置出来たのですが、ブロックの隙間が空き過ぎているので、[deformed]のサイズ(ブロック)を次は合わせてあげましょう。
左下のプロジェクトビューの[Assets]の下の[Bandits-Pixel Art]の三角の矢印をクリックして、[Sprites]をクリックしてください。
クリックしたらこの画面になるので真ん中の辺りに出した[EnvironmentTiles]をクリックしてください。
インスペクターも[EnvironmentTiles]の画面になればOK。
###ピクセル(画像)について
次にするのがピクセル(画像)のサイズの変更を行います。
一度64にサイズを設定します。これでもまだ隙間がありますよね。(数字を入れたら右下の[Apply]をクリック)
次に32にサイズを設定します。(数字を入れたら右下の[Apply]をクリック)
ぴったりにブロックが隙間無しにつきましたね。この64のサイズのピクセル(画像)は全体の画像で、32のサイズのピクセル(画像)はこのブロック単体のサイズのピクセル(画像)なので、サイズが合っているので綺麗に配置が出来た状態になったと思います。
#キャラクターの配置
先にAnimationsのフォルダを作ります。
プロジェクトビューの[Create]をクリックして[Folder]を選択します。
キャラクターの構えている画像を4枚選択してヒエラルキーのドラッグ&ドロップしてください。
先ほど作った、フォルダーを選択してあげて、[HeavyBanditIdle]とSave Asに入力してSaveをクリック。 [Idle]の意味は待機するという意味
そうするとこのように[Animations]のフォルダーに2つ新しく入っている。
サイズを48に変えてあげる。[Apply]もクリックを忘れずに。
カメラを近づけて合わせる。カメラのサイズと背景の色と高さ調整の3つと
###アニメーション選択について
もし、動いている動作が早いってなるのであれば、[Window]の[Animation][Animation]を選択して
このようにして、動かしたいアニメーションを複数選択して、0:06に合わしてあげるともう少し自然な動きになる。
とりあえず、キャラクターを配置して、アニメーションで動かす事が出来ます。
#物理演算をふようさせるコンポーネント(キャラクターを地面に走らせたり、ジャンプさせたりなど)
このように、[Rigidbody2D]をHeavyBandit_4(キャラクター)につけてあげてください。
キャラクターに物理演算が付くことによって、重力などキャラクターを動かす事(速度など)に関わってくる。「再生を押したら、重力によってキャラクターは落下する。(カメラから消える)」
そうならない為に、必要になってくるのが、[Collider]というもの。キャラクターを地面に歩かせるために、地面とキャラクターに[Collider]を付けて当たり判定をつける。
先ほどと同様に[BoxCollider2D]を付けてあげてください。
キャラクターの周りにボックスのようなものが付いたのが[BoxCollider2D]というものです。
地面とキャラクターの[Collider]が上手く合えばちゃんと立つ
###追加説明
TileMapの[Collider]がブロック単体でついていて、このままだとキャラクターが歩く際に引っ掛かって、ちゃんと歩けなかったりこけたりするので、ブロック単体につけるのではなくて、ブロック全体のひとつとして付けてあげる。そのために、[Composite Collder2D]をまず付けます。
次に[Tilemap Collider2D]の[Used By Composite]をチェック。
地面には、物理演算は動かないモノに対して関係ないので、(物理演算は、動くモノに対して付けてあげる)だからRigid body2Dの[Body Type]の[Static]に変えて動作を弱くする。
これで、ようやくキャラクターを地面にちゃんと立たす事が出来ましたね。
いつも、日頃お世話になっているサロンさんの動画があるので、ぜひ1度観に行っていただけるとありがたいです。他にも観るのも、実際に作るのも楽しくなるようなゲーム開発をしているので、開発のお役に立てられたら嬉しいです。
スタジオしまづのYouTubeチャンネル
https://www.youtube.com/watch?v=9F-M57l1iXM&t=419s
スタジオしまづが運営する「Unityゲーム開発サロン」
https://community.camp-fire.jp/mypage/projects/149191