iモード、2019年9月30日をもって新規申し込み受付終了。iアプリ開発者が振り返る「あの頃」

iアプリ開発に初挑戦

 当時はまだ「505i」が出たばかりで、市場に端末の数が少なく、「504i」向けのアプリを作ることになった。  画面の解像度は120ドット×120ドット。アプリケーションのサイズは30KB。画像やデータに使える保存領域のサイズは100KBだった。当然、実行速度も遅い。そうした環境で、シミュレーションRPGを作り始めた。  iアプリはJavaでプログラムが書けるとはいえ、リッチな命令は何もない。また、ファイルサイズが小さいので、Javaの利点を無視した設計をしないといけない。プログラマー向けに言うと、アプリ全体で1クラスにしないといけないそうしなければ容量が足らないのだ。  開発末期になると、処理の分岐を条件分岐ではなく、ビット演算でおこなうことで、コンパイル後のバイト数を稼いだりもした。条件分岐を使うと、コンパイル後のバイト数が、1バイトぐらい多くなってしまうのだ。  iアプリで使える命令はともかく少なく、基礎的な命令しかなかった。仕方がなく初日は、ウィンドウ描画システムや、メッセージ表示システムを作った。画面に情報を出力できなければデバッグが難しいからだ。そうやってひとつずつ部品を作って組み立てていき、5月の下旬には一通りゲームらしきものが動くようになった。  iアプリにはファイルシステムもなかった。保存に使える100KBの領域は、アドレスを指定してデータを読み書きできるというものだった。さすがにこれでは使い難いので、5月の下旬に2日使い、デフラグ機能付きのファイルシステムを作った。また、ネットからのダウンロード機能、ダウンロードしたファイルのバージョン管理システムも作成した。ついでに、デバッグを効率化するために、隠し機能としてファイラーも作成した。  そうこうするうちに6月末にアルファ版が完成した。とりあえず開発環境の構築から1ヶ月半で、シミュレーションRPGが遊べるようになった。  7月の半ばには、100KBではさすがに容量が少なすぎるので、実行速度を調整しながら、ファイルの圧縮・解凍をおこなうルーチンを組み込んだ。  8月になり夏コミが近付いてきた。折角なのでということで、パソコン向けのiアプリエミュレーターを書いて、開発中のシミュレーションRPGのエンジンを乗せて動かした。パソコン向けに、リッチな画像にして、シナリオを変えればパソコンゲームになると考えたからだ。そのコミケの作業を傍らでおこないながら、8月の末には正式版を完成させて納品した。  私のiアプリ初挑戦は、このように4ヶ月強で終了した。プログラムもグラフィックもシナリオも全て1人で作ったので、なかなか忙しかった。そして、9月11日にゲームはリリースした。  おそらく、当時iアプリを開発していた人は、みんなこんな感じだったように思う。

iアプリ開発に奔走した数年間、やめた理由

 その後、5年ほどiアプリの開発をやった。また、海外に行って、ゲームを売る交渉をしたりもした。その際、iアプリエミュレーターを、Javaアプレットに移植して、Webブラウザからiアプリを遊べるようにして、サンプルを触ってもらったりした。  最後に開発したのは、2008年6月29日にリリースした『キングオブアース』というRTS(リアルタイムストラテジー。プレイヤーがリアルタイムに進行する時間に対応しながらさまざまな戦略を立てて目標を遂行するゲーム)だった。このゲームは、リアルタイム進行で、生産、建設、戦争を行っていくゲームで、1000体以上の建物、ユニットが戦争を繰り広げるのがウリだった。  現在のスマートフォンから考えれば滅茶苦茶非力な環境で、1000体以上の建物やユニットをリアルタイムで動かすために様々な工夫をした処理の負荷に応じて、計算をフレーム単位で分割するようなプログラムを書いたりした。  それほど、どっぷりとiアプリ開発をしていた私が、その開発をやめたのは「先がないな」と思い始めたからだ。世の中には、徐々にスマートフォンの足音が近付いてきた。  『キングオブアース』を出した年の12月8日に、Android Emulator を触り始めた。そして、2009年3月26日にゲームをリリースした。こうして、私は一気にiアプリから遠ざかった。  ただ、2012年2月に、短い時間だがiアプリに戻ってきたことがあった。iアプリで出していたゲームを、Android に移植してくれという依頼があったからだ。  しかし、iアプリと Android では、同じJavaを使うとはいえ、プログラムの書き方や使える命令はまるで違う。どうしようかと考えて、自分の持っている技術を検討してみた。  ちょうど2011年頃に、私はパソコンと Android で同じゲームを実行できるシステムを開発していた。ゲームを1本作ると、パソコンでも Android でも実行可能にしていた。  その知見と、昔書いたパソコン向けiアプリエミュレータの知識を組み合わせればよいのではないか。そう思い、Android向けiアプリエミュレータを書いて、5日ほどで移植をおこなった。それが、私がiアプリに関わった最後になった。  この時期、様々な開発者が、iアプリに関わっていたと思う。多くの開発者が、それぞれ違う関わり方をしたはずだ。私の例は、1人の開発者が、どのようにiアプリの開発に関わったかの一例にすぎない。
次のページ 
ゲームを作ることの離れられない魅力
1
2
3