Buravo46's Note

学んだ事を書いていくブログです。

【Unity】ゲーム(に関係するもの)を11個作った話

経緯

就活終わる前

就活終わった後

3日前

来年までに11個のゲームを作る目標を立てていましたが厳しそうだったので、

急遽ゲーム(に関係するもの)を11個作ることにしました。

結果

  • Unityで使えるモジュール 1個
  • UnityのEditorWindow 6個
  • UnityのCustomProperty 1個
  • Unityのゲーム 2個
  • Unityの記事 1個

11個のゲーム(に関係するもの)を作ることが出来ました。

見事にUnityだらけです。

Unityで使えるモジュール

UnityでCSVを読み込んでデータを引き出すことの出来るモジュールを作りました。

身も蓋もない事を言うとUnityの要素はResource.LoadでCSV読み込んでる部分だけです。

けど結構自分的に満足のいくプログラムが書けた気がするモジュールです。

Github : UnityCSVLoader

UnityのEditorWindow

ゲームオブジェクトを一括で生成、消去、移動、回転、拡大縮小することのできるEditorWindowとポップアップウィンドウを作りました。

ゲームオブジェクト関係のEditorはここに放り込んでいくことになると思います。

Github : UnityGameObjectEditor

UnityのCustomProperty

インスペクタ上で、この属性のついたpublicなbool変数をTrueにしたら

スクリプトコンポーネントが削除されるカスタムプロパティを作りました。

誰得と言われてしまうと思わず納得してしまうよくわからないカスタムプロパティです。

RemoveComponentDrawer.cs内でEditorGUIUtility.ExitGUI関数を使用していますが、非パブリックなAPIみたいなので違う方法を模索する必要がありそうです。

CustomProperty関係のはここに放り込んでいくことになると思います。

Github : UnityCustomProperty

Unityのゲーム

Unityで2個のゲームを作りました。どのゲームもUnityRoomで公開しています。

1個目は風船をクリックして破壊していくクリックゲームです。

なるべく丁寧なゲームを作るよう心掛けた簡単なゲームです。

継承すれば楽にシングルトンにできるシングルトンパターンやシングルトンなオーディオマネージャー、オブジェクトプールとか詰め込んでいます。

BalloonShot

2個目はボールをコロコロ転がしてクイズに答えるクイズアクションゲームです。

クイズをCSVで書いて読み込んで扱っていたとき、うっかりResource.Loadを使わないテキストの読み込みをしてしまい、アプリケーションとしてビルドしたときクイズが表示されなくて焦った思い出のあるゲームです。

コロコロAnswer

Unityの記事

ゲームオブジェクトを一括で消去するEditorWindowを作るときに得た知見を書きました。

まとめ

まだ大丈夫…まだ大丈夫…とのんびりしていた結果が、

この状況を招いたと思うと見事にやっちゃったと思いました。

来年はもっと計画性を持って動くようにしたいです。

参考サイト

Unity Community - EditorGUIUtility.ExitGUI();