bekostation

Unityでゲーム作ってます

物理ゲーパズルゲーム作りました。「スライム落とし」

 

ふっと物理エンジンを使ったゲームが作りたくなり。

作りました。

 

スライム落とし | 無料ゲーム投稿サイト unityroom 

 

ゲームルール

・先ずは木の箱(茶色の箱)をドラッグで動かし配置します。

・三角マークのボタンを押したらゲームがスタートします。

・ハートのオブジェに触れるとステージクリアです。

・もし、詰んでしまったらリトライボタン(赤い輪のマーク) を押してください。

 

といった具合の落ち物パズルです。

ステージギミック考えるのがもの凄く面倒でした。 

ゲーム設計 

UnityではじめるC# 基礎編

[大槻有一郎]のUnityではじめるC# 基礎編

一年ほど前に購入した本です、

初Unityアプリをリリースできた、きっかけでもあります。

 

そう言えば・・本の中に物理エンジン使ったサンプルがあったな・・

と思い出し、参考にしながら設計することに決めました。 

 

タイトルシーン作成

タイトルはこちらのアセットを使用し作成しました。

シーンの推移、サウンドマネージャーなどの機能が揃ってます。

プログラミングを一切せずに使えます。 

 

またBGMとして、こちらのサイトからBGM音源をお借りしました。

メインBGM「はっきりおとめ」

 http://pansound.com/panicpumpkin/music/tanoshii.html

 

次にタイトルロゴの作成です。

普通のTextオブジェクトだと文字がぼやけてしますのでTextMesh Proを使用し作成しました。 

フォントにはこちらのドット文字フォントを使用しました。

ゲーム全体のUIの文字にも使用しました。 

 PixelMplus(ピクセル・エムプラス) ‥ 8bitビットマップふうフリーフォント

 http://itouhiro.hatenablog.com/entry/20130602/font

 

ゲームグラフィック素材

ステージの背景の青空と夜空の風景画像はこちらのアセットから使用しました。

 

主人公のスライムはこちらのアセットの画像を使用しました。

その他にもゴールクリアオブジェクトやリスポン地点ブロックの

画像としても使用しました。  

 

 

 動かせる足場としての木の箱の画像、

ゴールクリアオブジェクトの足場に付随してる木の画像を使用しました。 

 

動かせない足場としての四角い岩の画像を使用しました。

 

 ゴールクリアオブジェクトの地面のタイルとしてアセットから画像を使用しました。

 

 ステージ9の跳ねるキノコの足場として画像を使用しました。

 

 ゲーム効果音素材

プレイヤーのスライムが物体に接触しバウンドした時の効果音とUIボタンの効果音(ゲームプレイ中の再生ボタン)として使用しました。

 

タイトルメニューのスタートボタンの効果音と

プレイヤーのスライムがDestroyされた時の爆発音として使用しました。

 

UIデザイン 

全体のUIボタンの画像としてこちらのアセットを使用しました。

ドット絵調で柔らかい感じ雰囲気を演出できたと思います。

 

ステージセレクト 

シーンの推移変数を管理するStageSelectManagerスクリプトを用意しました。

 StageSelectManagerにはステージナンバーと紐付けをするためにGameObject配列を用意し各9つのUIボタンをアタッチして、PlayerPrefsを使用してステージクリア状況を保存して各ステージボタンのアクティブ、非アクティブを判断しました。 

f:id:bekotaizi:20171204070252p:plain

 

 ステージ設計

以下のスクリプトを用意しました。

 

GameManager・・・ゲームの進行を管理するクラス、

ステージクリアとセーブデータ、プレイヤーの状態の管理、

リトライ、プレイ、ホームボタンの管理。

 

BallManager・・・プレイヤーの挙動を管理するクラス、

Tagを使用して障害物の種類を判断してます。

障害物に衝突した時の効果音の再生、Destroyオブジェクトに触れた時の動作。

 

MovableBoxManager・・・動かせる箱の挙動を管理するクラス

OnMouseDragメソッドを使用してマウスドラッグしてる間は、

マウスの位置に対象オブジェクトを付随させる。

 

ステージオブジェクトの移動は、マウス操作だけで対象オブジェクトの動作を設定できる神アセット。DOTween Proを使用して作成しました。

 

 

拡張エディタアセット編

 今回から拡張エディタアセットを導入しました。

正直最高です。無料の物でも良いので是非導入すべきかと思います。

 

Hierarchyビューが超強化されるAssetです。

お気に入り登録機能。 表示、非表示機能。

入れ子オブジェクトを見やすくする機能。

他にも色々な機能がありますが、

この拡張アセット一つ導入するだけでエディタが別物になります。

※こちらの記事にも使用した感想書きました。 

bekotaizi.hatenablog.com

 

 

拡張アセット Transform関連が超、超強化されます。

例えば45°,90°,180°回転用の固定ボタンの追加。

自動的に地面を判断して接地してくれボタン。

などその他色々な機能。・・たったの「$10」絶対買ったほうが良いですよ(^o^)。 

 

 

ビルド時に使ってない不要なAssetファイルデータを削除してくれます、必要なデータだけ残るのでリソースの管理も楽になります。本当に便利。データのサイズも少なくなり幸せ。

※こちらの記事にも使用した感想書きました。

bekotaizi.hatenablog.com

 

拡張アセット うっかり無限ループするプログラムを書いてしまって、エディタが固まってしまった時・・普通はUnityを再起動するのですが、そうすると保存されてなかったデータはお亡くなりになります・・(^o^) と、そんな地獄を回避するためのアセットです。 ESC+Shiftで無限ループを強制停止。Unityを再起動して泣く事もなくなります。絶対に、絶対に導入すべしアセット。

※こちらの記事にも使用した感想書きました。

bekotaizi.hatenablog.com