初心者が2週間かけてUnityで作ったアプリをGooglePlayにリリースしてみる話 第3日目
「何気に一番迷うのはレイアウトかもしれない」
ワクチンの副反応から漸く回復した先端のマーシーです。
もう3日目になるのか、というため息の量が増えてきましたね。
1.画面のレイアウトについて
何はともあれ作業を進めないと永遠の2週間になりそうなので、とりあえず基本的な画面構成を考えていくことにしました。
Synty Studioさんのアセットから引っ張ってきたモデルを仮置きして、とりあえず地面をUnity標準機能のPlaneで作ってみることにしました。
キャラクターにRigidbody(重力)やCollider(衝突判定)を付けて...
カメラの角度やキャラクターの大きさで個人的に適当な位置には配置できました。
(UIやボタンなどを配置する時があればその都度変えていくかもしれません)
ここまでの作業が数十分で出来るのがゲームエンジンもといUnityの素晴らしいところですね。
基本的にはこの画面を中心にゲームシステムを肉付けしていきます。
2.移動方法の決定
さて、ここからはキャラクター操作の骨組みを作っていきたいと思います。
大まかには2種類の操作方法を考えていました。
1は読んで字のごとく自由にキャラクターを動かしながら移動する形になります。ただし今回は1ではなく、2のタイプで作ろうかと。
理由として、前回までのテーマとして挙げていた「操作方法は多くても2つ以下」という部分にマッチしそうだなと考えたからです。
そうと決まれば早速、要件定義から。
- キャラクターの移動は画面に対して横移動のみ
- 場外でゲームオーバー
- ステージやギミックは自動生成
今日はそのうち上2つの要件を実装できればと思います。
スクリプトを載せようと思ったのですが、どうやらはてなブログにコードを載せるのは少し面倒な様で…
(GitHubを使えば簡単に載せられるとのことなので近日中に勉強して編集します)
スマホアプリの画面って操作キャラクターがどれくらいの大きさで動くと分かりやすいんだろうなぁ……#Unity #unity3d #プログラミング初心者 pic.twitter.com/040nMzPY05
— 先端のマーシー (@Masashi_Sentan) 2021年9月8日
Twitterの方に短い動画を挙げましたが、おおむね横移動の要件は満たせていそうです。
Androidでのフリック操作への対応や速度などはその都度変更しましょう。
ただこのままだとカメラが全く動かないのと、ステージ外に落ちた後の挙動がわからないので修正します。
最終的にはカメラをキャラクターの親子関係に、ステージ外に落ちた時は暫定の処置としてシーンをリロードすることにしました。
スクリプトでカメラをキャラクターに追従させると明らかにカクつくし、シンプルなゲームなら単純に子要素にするだけの方が挙動は安定しそう#Unity #unity3d pic.twitter.com/Tg0ly8BTzj
— 先端のマーシー (@Masashi_Sentan) 2021年9月8日
動画のように、要件で想定した挙動はしていそうですね。
明日からは白い床で仮置きしていたステージの自動生成と移動について考えていく予定です。
こんな形でTwitterに進捗の動画なども挙げているのでぜひフォローしてください!