Unity

Unity無料教材!『i-school』2Dタップシューティング拡張編を学習してみた

Unityの学習方法はたくさんあります。公式のチュートリアルや書籍、ブログ、YouTubeやUdemyなどの動画教材、有料のオンラインスクールなどがあります。

今回は『i-school』というオススメのサイトを紹介させてもらいます。

i-school
https://i-school.memo.wiki

i-schoolはUnityのゲーム制作を学ぶためのサイトで、無料で利用できます。豊富な教材があり、どれを始めればいいか迷うこともあるかもしれません。

Unity初心者の悩み
ゲーム開発を始めたいけれど、どの教材を選べばいいのか、どうやって始めればいいのかわからない。特に、初心者向けのわかりやすい教材が欲しい。

今回はその中から1つ、『2Dタップシューティング』を学習しましたので、その内容を共有したいと思います。

i-schoolの『2Dタップシューティング』について

ゲーム内容

i-schoolの『2Dタップシューティング』は、プレイヤーは動かず、マウスをクリックすると弾を発射するゲームです。敵は画面上部から現れ、一定数の雑魚が出現するとボスが登場します。プレイヤーの下の拠点に敵が当たるとライフが減り、ライフがゼロになるとゲームオーバーになります。ボスを倒すとゲームクリアです。

この記事は前回の発展編の続きになります。

拡張編の学習時間

基本編,発展編に比べ工数が少ないため、数時間で終わりました。

学習の振り返り

各手順を振り返る

拡張1~4

拡張1 -ボタンのアニメ演出の追加-

特殊バレットが使用可能になったらアニメーション演出を行うようにします。

選択中のバレットの画像を少し暗くします。

水のバレットを選択中
炎のバレットを選択中
if文の省略

if文が1行である場合に限り{}を省略して書くことができる。ということを学びました。

課題に挑戦

BulletSelectManager.csに追加した処理につけるコメントを自分で考えます。

// バレット選択ボタンのアニメーションを行うためにtrueを引数に渡す
// バレット選択ボタンのアニメーションを行わないためにfalseを引数に渡す
このように書きました。

拡張2 -Exp 増減時の数字のアニメ演出の追加-

DOTween.Toを使用してExpの増減時にアニメーションするようにします。

処理の順番や引数を変えたり、重複している処理を削除したりしました。

拡張3 -キャラモデルのアニメ演出の追加-

プレイヤーキャラの登場時の演出をアニメーションで行います。

拡張4 -キャラモデルのアニメーションの追加-

バレット発射時、拠点ダメージ時、ゲームオーバー時にアニメーションを行うようにします。

アセットのAnimatorを開き、各アニメーションの設定をします。
デフォルトをidleにし、AnyStateから3種類のステート(attack,get_hit,die)にトランジションを繋げます。

新しくトリガーを3つ作成し、3種類のステートのトランジションに遷移条件を設定します。

CharaAnimationController.csを作成し、アニメーション演出を制御します。

PlayerController.csを修正し、マウスをクリックした時(バレット発射時)にCharaAnimationControllerのメソッドを実行するようにします。

攻撃アニメーション

DefenceBase.csを修正し、拠点ダメージ時とゲームオーバー時にCharaAnimationControllerのメソッドを実行するようにします。

拠点ダメージアニメ
ゲームオーバー時

なんかキャラクターがバインバインしているので原因を突き止める。

AnyStateからdieへのトランジションのインスペクター

Can Transition To Selfにチェックが入っていたためループしていた。
この項目は「自分自身へ遷移できる」という項目なため、繰り返しアニメーションを行っていたという事みたいです。

Can Transition To Selfのチェックを外したら上手くいきました。

まとめ

拡張編は基礎編と発展編に比べ学習する量は少なかったものの、ゲームを華やかにさせるアニメーションの実装が多く作っていてとても楽しかったです。

今回はアセットやフリー素材を使用しているので、自分でアイコンやキャラクターとアニメーションを作って実装させたりしたくなりました。

i-schoolの教材はオススメ!

i-schoolはとてもいいサイトです。

今回の教材に限らず、いい教材がたくさんあります。
是非Unityの学習に役立ててみてください。

この記事を読んで挑戦したり、実際に取り組んだ方々のコメントをお待ちしています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です