をリストアップしてみる。ゲーム向けをうたってなくてもゲームが作れればよしとしよう。
PC
パソコン向けゲームの開発。
- デスクトップアプリケーション
王道。最先端のCPU, GPUを使ったゲーム開発が可能。言語、ライブラリもお好みしだい。欠点としては、ゲームが実行される環境があまりにバラバラなので、環境依存の問題がおきやすいことと、統一したゲーム配布プラットフォームがないこと。アマチュア向けSteamみたいのがあるといいんだが。
- ツクール (http://tkool.jp/)
RPGやアクションゲームなどの特定ゲーム作成用ツール。ゲーム向け言語の一種ともいえる。そういった意味ではHSP (http://www.onionsoft.net/hsp/)なども似た位置づけか。最新版のアクションゲームツクールはFlashやXbox360向けのゲームも作成可能。
カウンターストライクに代表される、既存ゲームを改造して別のゲームを仕立てる方法。洋ゲーにはMODのためのツールやインタフェースが充実しているものが多いため、海外では各種コンペティション (http://www.makesomethingunreal.com/)が行われるほど盛んのようだが、国内だとあまり見かけない。
ブラウザ
ブラウザで動くゲームの開発。ブラウザゲーはユーザへのゲームの配布コスト(遊ぶまでの手間)が低いのが魅力。
ブラウザゲーを作るに当たっては一番メジャーなプラットフォーム。Flash 9以降のActionScript3.0が使える環境ではパフォーマンスもだいぶ向上した。多少古いバージョンやFlash Liteを使えば携帯電話やWii、PS3上での動作も実現できるが、パフォーマンス的な面では若干厳しいと思われる。Flash版ツクールのようなGAME BRAINという環境もある。
- Java (http://java.com/ja/)
- Processing (http://processing.org/)
Javaアプレットで一世を風靡したブラウザ上リッチクライアントの草分け。Javaがサーバサイド言語に軸足を移してしまっている今日ではFlashにおされ気味。ProcessingなどのJava VMを活用したより簡易にゲーム、デモが書ける環境もある。
JavaScriptでゲーム開発はパフォーマンスや描画機能の面でいろいろと制限が多くあまり現実的ではないが、あらゆるブラウザで動作する可搬性は魅力。Google Chrome + Canvasはその制約を取っ払うポテンシャルがありそうだが、そうするとChromeにロックインされてしまうという点が残念。
- Silverlight (http://msdn.microsoft.com/ja-jp/silverlight/default.aspx)
- Unity (http://unity3d.com/)
- Native Client (http://code.google.com/p/nativeclient/)
- Shockwave (http://www.shockwave.com/japan/index.html)
その他マイナー、これから、もう終わったプラグイン系列。Flash対抗技術。Unityなどのゲーム特化プラグインは、3Dや物理エンジンなどを組み込んだ高機能化で差別化を行おうとしている。
モバイルデバイス
ケータイなどのモバイルデバイス上のゲームをアマチュアが作れる環境もいろいろある。
- iアプリ (http://www.nttdocomo.co.jp/service/imode/make/content/iappli/)
- ezアプリ (http://www.au.kddi.com/ezfactory/tec/spec/ezplus.html)
- S!アプリ (http://mb.softbank.jp/mb/service/3G/contents/game/)
ドコモ、au、ソフトバンク各社ケータイ向けにJavaでゲームを作る環境がある。503i時代から比べると飛躍的に性能が向上し、3D描画性能もなかなかのもの。欠点はやはり操作系か。細かい操作を必要とするアクションゲームはケータイのUIではきつい。ケータイUI向けの工夫が必要。
黒船iPhoneではObjective-Cを使ったゲーム開発が可能。App Storeを通じた配布経路も完備。App Storeにすでに多くのゲームがある今だとそれらの中に埋もれてしまう懸念はある。マルチタッチディスプレイを使った独特のUIは利点でもあり欠点でもある。UI上の工夫はより面白く難しい。
Google Android上でもJavaによる開発が可能。Android Marketによる配布もできる。
- WindowsMobile (http://www.microsoft.com/Japan/windowsmobile/default.mspx)
- Pocket GCC (http://pocketgcc.sourceforge.net/)
- Pocket C# (http://pocketgcc.sourceforge.net/pcsharp/)
WindowsMobile上は、C++やC#、VBなどで開発可能。Visual Studio Standard Edition以上が必要。Pocket GCCやPocket C#のように端末内で開発、実行までできる環境もある。
PalmやZaurusなどのPDA上でもゲーム開発はできる、というかできたが、現状PDAというカテゴリの製品がほぼ皆無なので今から開発するメリットはあまりなさそう。
PC-1210やFX-702Pなどの古のパーソナルコンピュータ。初期の機種は基本的にテキスト1行しか表示できないので、ゲームを作るには相当工夫が必要。1階ずつしか表示できないターン制クレイジークライマーとか、今から考えると結構すごいゲームがあった。
国内じゃだれも知らんかもしらんが、MSのポータブルオーディオプレーヤーであるZune上では、後述のXNAを使ったゲーム開発ができる。日本での認知度が皆無なのが欠点、というか日本では売ってない。
- Tapwave Zodiac (wikipedia:en:Tapwave_Zodiac)
- N-Gage (wikipedia:en:N-Gage)
- Gizmondo (wikipedia:en:Gizmondo)
国内ではほぼ流通しなかったモバイルゲーム機群。ZodiacはPalm OS。N-GageはSymbian OSとJava MIDP。Gizmondoは2がAndroidもしくはWindows CE搭載で今年夏に出ると言われている。
据え置きコンシューマ機
据え置きの家庭用ゲーム機で、アマチュア向けゲーム開発環境が提供されている例もある。
Xbox360上で動作するゲームがC#で作成できる。Visual Studio上のデバッグメニューを叩くと360上で自作ゲームが動き始めるのは感動。コミュニティゲームというゲーム配布用プラットフォームも整備されている、が国内ではまだ開始されておらず、またフリーゲームは配布不可。CPUが弱くGPUが化け物という偏ったデバイスなので、パフォーマンスを引き出すにはコツが必要。
この辺は触ったことがないので良く分からんのだが、GPUにアクセスできないなどの制限がきつく、ちゃんと動くゲームを作るのは難しい、はず。配布経路も整備されていない。PS3 LinuxはQuake2を動かすくらいのパフォーマンスは確保できるようだ。
- ネットやろうぜ (http://www.scei.co.jp/Net/)
初代PS向けの開発環境。12万円とちょっと覚悟のいる値段だったが、LightWave 3Dがバンドルされていることを考えれば安いか。
- ゲーム内エディタ
メイドイン俺 (http://www.gpara.com/article/cms_show.php?c_id=9656&c_num=14)のようにゲームが作れるゲームや、リトルビッグプラネット (http://www.jp.playstation.com/scej/title/lbp/)のようにエディタの自由度が高すぎて別ゲーが作れてしまうものなど、ゲーム内でゲームが作れるものがある。最近はネットワークを介して他の人が作ったゲームが簡単に遊べるようになっているものもある。古くはロードランナーの面エディットや、ピンボールコンストラクションセットなどの高機能なエディタが備わっているものもあった。
- ファミリーベーシック (wikipedia:ファミリーベーシック)
- SC-3000 (wikipedia:SC-3000)
- GAME BASIC for SEGASATURN (wikipedia:GAME_BASIC_for_SEGASATURN)
- BASIC STUDIO (wikipedia:BASIC_STUDIO)
- でべろBOX (http://www2s.biglobe.ne.jp/~tetuya/FXHP/pcengine/hard/deveb.html)
- PC-FXGA (wikipedia:PC-FXGA)
任天堂のファミコン、セガのSG-1000などの家庭用ゲーム機上で動くゲームがBASICで書けるもの。SC-3000はほとんどパソコンみたいなもんなので、これを入れるならぴゅう太とかも入れないといけないのかもしれない。ファミリーベーシックは使えるキャラクタが固定されているなどの制約がいろいろ多かったものだが、その制約のなかでも機械語を駆使するなどして無茶にクオリティの高いゲームを作っている人々もいた。旧次世代機向けには、サターンBASICやBASIC STUDIOのようにセガサターンやPS2上で動作するBASIC環境もあった。PCエンジン向けにはでべろ、PC-FX向けにはPC-FXGAがある。
携帯コンシューマ機
携帯ゲーム機向けでアマチュア向けにオープンになっている事例は少ない。
- WonderWitch (http://www.swan.channel.or.jp/wonderwitch/)
バンダイのワンダースワン向けゲームが作れるツール。C言語。8086アセンブラやバックグラウンドスクリーン (BG)を駆使したゲーム開発という、古きよき時代のテクニックがフル活用できる素敵環境。専用カートリッジが必要のため、作ったゲームを手軽に配布はできない。
オープンゲーム機
最初からユーザに向けてオープンな開発環境を整備しているゲーム機もある、が多くはあまりにマイナーだ。
この分野では最もメジャーなGP32系列。最新バージョンのWizがそろそろ出る予定。SDLなどのライブラリを使えばWindows用2Dゲームを移植することも簡単。全般にパッドのできがあまりよくないのが欠点。
- Pandora (wikipedia:en:Pandora_(console))
Linuxベースのゲーム機、というかほとんどUMPC。ポテンシャルは不明。
Leafが突然世に出した謎の携帯機。白黒画面と小型ボディはゲーム機というよりはポケットステーションやDCのビジュアルメモリを思い浮かばせる。かなり高性能なCPUと限られたVRAMによって相当無理なパーティクルアニメーションなどもでき、開発者にとってはとてもゲームが作りやすい名機、だと個人的には思うのだがあまりにマイナー。白黒画面、押しにくい十字キー、バッテリがぜんぜんもたないなどが欠点。欠点多い。
- Meggy Jr RGB (http://evilmadscience.com/tinykitlist/100-meggyjr) (id:ABA:20081217#p1)
- XGameStation (http://www.xgamestation.com/)(id:ABA:20030811#p1)
その他自作キットに近い独自ゲーム機。持っているユーザはすごく少なそうだ。
とまあいろいろあるのでみんな好きなものを選んでゲーム開発をしよう!というかコンピュータがあればゲームは載せられるので、ゲーム向けに限らないプログラマブルな電子デバイス全般の話になってしまうのがなんだな。ほかにのらゲーム開発者がゲームが載せられる環境、デバイスあるかな。