はじめに
Unity初学者です。コーディングに関しても同様に(JavaScriptは3ヶ月ほど、C#に関しては初めてです)。
ふと思い立ってゲームを作りたいなーと思ったので、Unityを用いて作成を行います。
本記事では主に作成するものの概要や準備などの面を中心に書いていきます。
こういったことは苦手なので読みにくい文章になるかもですが、同じく初学者の方々の参考になれば幸いです。
作るものについて
作成するものは2D横スクロールアクションです。私が好きなゲームのタイプなので。
以下、とりあえず実装したい仕様の一覧(仮)です。
仕様一覧(仮)
- プレイヤー
- 操作
- 左右の移動
- 左右へのダッシュ
- 上方向へのジャンプ
- 射撃(マウスカーソルの位置に向かって射撃を行う)
- ステータス
- HP(0になるとゲームオーバー)
- 操作
- モンスター
- スライム的なやつ
- ゆっくり移動するだけ
- 当たるとダメージ
- いのしし的なやつ
- 普段はゆっくり移動する
- プレイヤーを見つけると突進する
- 遠距離攻撃を行う敵
- 普段はめっちゃゆっくり動く
- プレイヤーを見つけると遠距離攻撃を行う
- スライム的なやつ
- 環境要素
- すり抜けられる床
- 上から以外ならすり抜けできる
- 上に乗った状態で下に入力するとすり抜けできる
- ダメージを受ける床
- 乗るとダメージを受ける
- 水
- 操作が変化する?かなんかやりたい
- すり抜けられる床
- アイテム
- 回復アイテム
- 触ると即時回復
- 回復アイテム
これらを実装してプレイ画面を完成させた上で、スタート画面、クリア画面を簡易的に実装して一つのゲームの形にしていきます。
環境について
OSはMacOSです。
-
UnityのEditer 本体 Unity 6(6000.0.35f1)
Unityの公式からダウンロード そんな難しくなかったので詳細は省略
以下を参考にUnity Hubのみ日本語化を行なっています
https://bizroad-svc.com/blog/unity-nihongoka/
Editerも日本語化できますが、個人的に非推奨だと思います。大体英語で説明しているところがほとんど(公式も含めて)ですし、何より日本語で書いてあっても専門用語はわからないし -
(C#のスクリプト編集用) VSCode バージョン: 1.96.4 (Universal)
コードエディターです。操作もしやすくて便利なのであったほうがいいと思います(無しでも一応ok?試したことはないので何とも言えないですが)
VSCodeのインストールはかなり前に行なったので申し訳ないですが詳しくは調べてください(すぐ出ると思います)
ただ、C#の導入については最近行なったばかりなので軽く
MacOSだとパスがずれてエラーが出るようなので、以下を参照して修正が必須です。
https://zenn.dev/unsoluble_sugar/articles/982e38df5ffbd9
事前にやっていること
スクリプト作成
Piskelというサイトで簡単なドット絵を作成してプレイヤーや敵の画像(Sprite)を作成しています。
https://www.piskelapp.com/
絵は全然描かないですけど、自分の絵で動かしたかったので、せっかくなので書いています。ブラウザ上でちゃちゃっとかけます。
Unityの公式に無料のアセットがあるので、別にやんなくてもそっちで全然オーケーだと思います
Unity Learnのチュートリアルゲーム作成
Unity Learnでチュートリアル用のを2つやって基本操作を学べたのでそれについて
一つ目は3Dの玉転がしゲームを作成するチュートリアルです。
https://learn.unity.com/project/bolt-roll-a-ball-tutorial?courseId=606c107eedbc2a0afb98ea50
日本語で読みやすく、Unityの基本操作について学びやすいと思います。
また、コードの記述を行う代わりにVisualScriptingという手法をとっています。この記事では使用しませんが、これもとっつきやすくて良かったと思います。
二つ目は2Dの見下ろしのアドベンチャーゲームを作成するチュートリアルです。
https://learn.unity.com/course/2d-beginner-adventure-game
初めてC#でコーディングを行いましたが、基本的なことから説明してくれているのでかなり勉強になりました。
あとは、2Dゲームの基本的な設計は一通り学べると思います。ただ、日本語ではないのとバージョン違いかなんかで、初学者目線一部わかりにくい部分もあると思います。Monobehaviorのスクリプトの作り方とか
おわりに
Unity自体が初めましてなのと、こういった記事でまとめることに関してもほとんど経験がないこともあって、どうなるかわかりませんがなるべく詰まった部分や実装についてアウトプットができればいいなーと思っています。
とりあえず、記事を書いている時点でいくつか実装済みなのでそれについて記事が出せればいいなーと思います。
他の初学者の方にも参考になるように頑張りますのでよろしくお願いします!