昨今、統合型ゲーム開発環境およびライブラリは世界中からリリースされており、その数も多いです。
開発には汎用的開発言語を使う作り方が一般的ですが、専門性の高い開発用言語を学ぶのが大変で、言語知識の有無が開発の壁となりがちでした。
この壁を克服するための工夫が施されており、専門的知識が少ない人でもゲームを気軽に作ったり動作を付けることができるようになっているのが統合型ゲーム開発環境の特徴です。
学習容易なスクリプト言語を用いたり、アイコンから動作を選択させたり、実際の開発方法は各開発ソフトのコンセプトによって異なります。
どんな開発ソフトも動作を作るためには何らかの形で「エディタ」が必須、そしてエディタの使い勝手が良いか悪いかは開発環境としての良し悪しを決める重要な要素となり、人気の高い開発環境には必ず優れたエディタがあります。
各ツール固有の「エディタ」が持つ特徴を元におおまかな分類をした場合、「スクリプト系」と「オーサリング系」で 2 つに分類できます。
1.
汎用もしくは専用の(スクリプト)言語を使ってコード・エディタ上で開発2.
コード編集を極力排除し、イベント作成専用エディタでの開発を主とする
1 と 2 の系統について、1 はスクリプト系
、2 はオーサリング系
の開発ツールという定義。
1 の代表が Monkey X や LÖVE や Torque 2D MIT
2 の代表が Construct2 や Clickteam Fusion 2.5 や Stencyl など
ハイブリッド型開発ツール
GMS は1
と2
の特徴を標準で併せ持つ開発ソフトです。オーサリング型の気軽さとスクリプト型の自由度を標準で備えているのが GM:S の特徴です。
オーサリング系はエディタに特徴があって、プログラム的要素を極力見せない工夫が施されています。オーサリング系のツールは開発の主体がコーディング不要なイベント編集用エディタに依存します。特にプリセット的な動作が充実しており、動作を選択するだけでキャラクタを気軽に動かせます。
GM:S はスクリプトを使った製作が推奨される場合が多いものの、アイコンからイベントやアクションを選択して動作を作ることも標準で可能となっています。
イベント駆動型プログラミング
開発初学者に対するサポート機能以外に、オブジェクトに対してイベントドリブンでプログラムするという仕様にも GMS の特徴があります。
フロー駆動型プログラムでは上から下へ向かうよう処理の流れを作り、順番に従って条件判断を行い処理を実行します。
イベント駆動型ではイベントをイベントキューに入れて、イベントに対応する処理内容をコールバック関数に書き込みます。
GMS はイベント駆動型プログラムの概念を利用したインターフェースで、オブジェクトに対する設計/構築の自由度が非常に高いツールとなっています。