すごいゲーム作りたい!

Twitterで書ききれないことを載せる予定です。Unity勉強中!

Unity1Week(お題:当てる)ありましたね!

ありましたね!

今年初の Unity1Week!今回は「当てる」でした。

いつも通り振り返っておこうと思います。 

 

目標

 やりたいことは色々あったのですが、とりあえずこの2つを消化しようと思いました。

 ・いい感じの 3D の絵作り( Post Processing Stack をしっかり使えるようにする)

 ・SOLID原則でコードを書いてみる

 

作成

 「当てる + 3D」だともう「打ちまくって壊す」しか出てきませんでした。

この方向性で進めます。

 SOLID原則は基本的にはこちらを参考に進めていきます。

tsubakit1.hateblo.jp

 ・SOLID原則

 ・デザインパターン

 ・クラスを分ける

 ・インターフェイスを使う などなど

普段の自分の書き方と全く違ったので新鮮で楽しかったです。

何より、なんか綺麗にコード書けてる!という気持ちになれます。

でも実際、

 ・機能の追加や変更などがスムーズにできる

 ・原因不明のバグが少なくなりそう、というか今回は無い…はず

というのはなんとなく実感できました。

今回は一週間だったので大丈夫でしたが、もっと長期間の開発になればコードがぐちゃぐちゃになる気がします。

そうすると必要なのが、

なんだと思います。以前触ったときは便利さが分からなかったのですが、今なら分かるかも…。 

 ちなみにこんなのもあるみたいなので次の機会に使ってみたいです。

qiita.com

 

 こんな感じで勉強しているとあっという間に木曜日が終わりました。

ゲーム制作は全く進んでません。

 

 ここからはとにかくゲームを完成させるモードに入りました。

いつも通り遊びのデザイン講座と、

japan.unity3d.com

フォロワーの方から教えて頂いた進むことの面白さや単調さの回避を軸に考えました。

 ・一定数得点を得るとボーナスが出る

 ・初めとは違う色の敵(壊せるやつ)が出る

 ・最後は制限を取っ払って打ちまくる などなど

まだ変化をつけたかったのですが、

(例えば終盤に連れて敵の出てくる速度がアップするなど)

とりあえず以前よりは良くなったはず!

そんなこんなで4時間の遅刻を経てなんとか完成しました。

こんな感じで球を打ちまくって壊すゲームです。

f:id:nknkYBI:20180228180657g:plain

たまうち | 無料ゲーム投稿サイト unityroom - Unityのゲームをアップロードして公開しよう

 

技術的なこと

● オブジェクトプール

 Unityの Instantiateって結構重い処理らしいです。

qiita.com

今回は球を大量に打つ必要があったり、敵はこんな感じで大量の破片で構成されています。

毎回 Instantiateで作っていたら大変なことになるだろうなー。f:id:nknkYBI:20180228195155g:plain

ということでオブジェクトプールを使用しました。

ゲームを始めたときにあらかじめ球や敵をいくつか作って使い回してます。

こちらでは動画でオブジェクトプールの作り方を説明してくれています。

www.youtube.com

  また、今回は使いませんでしたが UniRx にも ObjectPool ってのがあるみたいです。

indie-du.com

こちらも次の機会に使ってみようかなーと思います。

 

● ガウシアンブラー

 ポーズ画面とかで背景をぼかしたいなー

ということでガウシアンブラーを使用しました。

f:id:nknkYBI:20180228201836p:plain

自作ではこれが限界でしたが、一応ゲーム内では使用しています。

ちなみにですが、検索すると凄くきれいなブラーが見つかります。

wordpress.notargs.com

 

反省

● サムネ

 サムネを直した方が良いというご指摘を頂けました。

f:id:nknkYBI:20180228180657g:plain

確かに面白くなさそう!

ということで色を少し濃いめにして、ゲームで面白そうな部分を新たにサムネにしてみました。

f:id:nknkYBI:20180228222955g:plain

こっちの方が面白そうな気がしますし、内容も伝わりそうです。

 

● UI(コンボ)

 今回のゲームのスコアは単純に

「敵を倒した得点 x コンボ(倍率) = スコア」という計算式でした。

ですが UI では「コンボ : 2.00」と表示されておりコンボが倍率である感じがしません。

同じお題で投稿されていた AroundStar というゲームでは

「Combo X 1.00」と表記されていました。

こちらの方が点数が倍率で上がる感じが分かりやすくていいな!と思いました。

なので x を付けてみました。

f:id:nknkYBI:20180301153709p:plain

 

● タイトルの音楽

 今回実は時間が無くてタイトルの音楽を入れていませんでした。

ですが、生放送などを見ているとどのくらいの音量か知るためにもやはり必要だと思いました。

特に今回のゲームはクリックした瞬間にすぐに始まるので、音量調整する暇もありません。

これはいけません。

 

● その他

 この他にもたくさんのことを学ばせていただきました。

次回以降に生かしたいと思います。

もしアドバイス等がありましたら教えて頂けると嬉しいです!

 

最後に 

 以前に比べ少しづつ成長している、なんてお言葉も頂けました。

ありがとうございます!

これからも頑張ります。お疲れ様でしたー!