見出し画像

【Unity1ヶ月目】はじめてのゲーム開発

はじめまして。個人でゲーム開発中のイチタと申します。
今回ははじめてUnityでゲーム開発をしたので、制作過程を振り返るとともに気づきをまとめてみました。
私同様、今後ゲーム開発したいと考えている方に読んで頂けましたらとても嬉しいです。

初制作ゲーム 概要

カジュアルゲームの定番「ブロック崩し(2D)」に色々アレンジしたものを10日で制作しました。
今回はアセットストアの素材を使わず、全て自作素材を使用しました。
(自作素材の使用アプリや作成方法については別の記事にまとめています)

制作したゲームはunityroomに投稿しておりますので、もしよろしければ暇つぶしに遊んでみてください。

作者のスキル

私はエンジニア出身でプログラミングはそこそこできるのですが、それ以外は専門外だったため、完全独学です。

  • ゲームUI(ボタン、アイコン、バナー等)

  • ゲーム演出(ポップアップやゲージなどの動作、キラキラさせる等)

  • イラスト(立ち絵、ドット絵)

  • 2Dアニメーション

ゲームUI・演出面はデザニメ・ラボさんの発信がとても勉強になります。
定期的にUIチャレンジ企画があり、何度か参加させていただいています。

制作手順

Unityインストール

詰まり度:☆☆☆☆★
最近Mac miniを新調したのでスペックは十分足りており、特に詰まることはありませんでした。
Visual Studioやgit(バージョン管理)の開発環境は既に入っていました。

ブロック崩し 基本機能実装

詰まり度:☆☆☆☆★
ひろはすさんの動画がとても丁寧で、詰まることなくブロック崩しのコア部分とゲームクリア/ゲームオーバー処理を実装できました。
Unity含むゲームエンジンに触れるのが初めてだったので、物理演算(当たり判定等)などの処理を簡単に搭載できることにとても驚きました。

ブロック崩し 追加機能実装

詰まり度:☆☆☆★★
ブロック崩しの基本機能ができたところで、少しオリジナルの要素を加えることに。

  • 上下キーでボールの速度を変更可能

  • 左上にタイム表示

Unityゲーム開発者の方々がたくさん情報提供してくださっているおかげで、簡単な処理は少し検索しただけでヒットするので大変助かりました。
この段階ではUnityのお作法などは気にせず、フィーリングで色々触って遊んでいました。

タイトル画面 実装

詰まり度:☆☆☆★★
ゲーム部分の実装と並行してデザインも検討しました。
手始めに、起動時にタイトル画面をポップアップ表示させるための処理を入れました。(こちらも検索ですぐヒット。ありがたいです)

ゲーム中断機能 実装

詰まり度:☆☆☆★★
ゲーム中に中断ボタンをクリックするとポーズ画面が表示されるように修正しました。このあたりから、簡単な機能なら自力で実装できるようになってきました。

グラフィック差し替え

詰まり度:☆☆★★★
ブロック崩しのバーと壁を自作素材に変更。
上下キーが押された際に、バーの画像も切り替わるようにしました。また、左下に簡単なドットアニメも追加しています。

ゲームサウンドとミュート機能追加

詰まり度:☆☆★★★
BGMと効果音を追加。
サウンドを鳴らすこと自体は簡単でしたが、ミュート機能の実装方法で少し悩みました。今回は、ミュート解除ボタンが押された時だけサウンドONにすることにしました。

リザルト画面とパーティクル追加

詰まり度:☆★★★★
今回最大に詰まったポイントです。
クリアタイムに応じてリザルト画面を表示するのですが、ゲーム結果を目立たせるために放射状のパーティクルを追加しました。
パーティクル自体はたかゆさんの作例がとても分かりやすかったため、すぐ表示できました。

ゲーム結果(下画像の「D」) > パーティクル  > ダイアログ画像
この順序で表示させるためにだいぶ苦戦しました。
一応意図通りに表示できましたが、まだ完全には理解できていません。

全体的にバランス調整、ゲーム完成。

ここまでで全機能を実装できたので、細かな調整や発見済みのバグ修正を行い、めでたく第一作目のゲームが完成しました。

おわりに

Unityを触ってみた感想は、「Unityすごい!便利!」です。
直感的な操作でゲームを作れることや、メインスクリプト約300行でここまでコントロール出来ることに驚きました。
Unityが色々なゲームに採用されている理由が少し理解できたような気がします。

最後までご覧くださり、ありがとうございました!

この記事が気に入ったらサポートをしてみませんか?