UnityとPlayMaker

Unityとは

UnityはSTEAMやスマートフォンゲーム開発で使われているゲーム開発ツールです。
私は数年前からその可能性に魅力を感じて勉強はしていたのですが、
なかなかゲームを完成させてアプリとして作ってゆくというところまでは進みませんでした。

 

基本的には3Dを扱うときに使うツールという認識でいたのですが、昨今では2Dもしっかり扱えます。
今回のHOIHOI BUILDINGはまさにこの2Dゲームをどう作れるのかという問題に挑戦した作品となります。




またゲームを完成させるというのは「開発を終わらせられない」問題というのがつきものです。
HOI HOI BUILDINGも例にもれずそういった問題にあたりました。
ゲーム性はプログラムや設計とは異なる点にあり、おもしろさを表現というのはクリエイティブな側面を持つので
答えが決まってない「やりのこしたポイント」が無数に出てくるので終わらせられないのかなと思います。

さて、Unityはすべてオブジェクトで基本構成されます。
オブジェクト同士が複雑に絡み合ってシステムを構成するのです。
その1つ1つをプログラム制御するのですが、もう少し直感的に動作を設定したいときにPlayMakerを使います。

最初にお伝えすると直感的でよいという側面もあれば、
複雑になればどこに何を書いたかわからなくなるという悪い面もあります。



こちらがPlayMakerの設定画面になります。
左側がイベントと状態、右側がアクションを設定する画面となります。
今回はSTART(はじめ)の状態からu Gui Button On ClickEventを使ってMOUSE DOWNイベントをuGUIオブジェクトに設定しています。
画像の左側に赤いアイコンがありますが、それがPlayMakerを設定したオブジェクトの印です。


さて、これがゲームルール個所のPlayMakerになります。PUSHボタンを押した後にGreat/good/badなどの判定があるのですが
その判定後にダメージとスコア計算を行います。スコアは更新され鳥が上に上り
ダメージはHPが0になったらゲーム完了画面を表示するようにします。
その処理を全部やるとこうなってしまいます。もう何がどこにあるのかわからないですよね…

正直こういったゲームルールについてはプログラムでかけばよかったなと思っています。
ただボタンの処理やオブジェクトを生成する処理なんかはPlayMakerの得意とする点なので
うまく組み合わせて使うことが必要になるなと感じています。
あまり複雑なことをPlayMakerだけで実現してしまうと後々のメンテナンスが大変です。
一方でボタンの処理のような簡単な処理は直感的なPlayMakerに任せると楽です。

Unity自体がオブジェクトで構成されているのでPlayMakerが助けるになるときは必ずあります。
ただ拡大しすぎた時に何がどこに書いてあるのかわからなくなったので、
慎重に設計しながら使うべきだなと感じました。

今日はひとまずここまでにしましょう。