『GAIABREAKER(ガイアブレイカー)』開発陣インタビュー ゲームエンジン“enchant.js”を使ったWii U向けシューティングに秘められた野望とは?

Wii Uで配信された『GAIABREAKER(ガイアブレイカー)』。“enchant.js”というゲームエンジンで作られているらしいが、いったいそれは何なのか。開発陣にインタビューを行った。

●1億総クリエイターの道への第1歩!?

ガイア/10

 2013年12月25日、Wii Uのニンテンドーeショップ向けに配信された『GAIABREAKER(ガイアブレイカー)』。既報の通り(⇒記事はこちら)、本作は任天堂が提供する開発フレームワーク“Nintendo Web Framework”に対応した、“enchant.js for Nintendo Web Framework”で作成された縦スクロールシューティングゲームだ。

 “Nintendo Web Framework”に“enchant.js”(エンチャント・ジェーエスと読みます)というと、何だかすごそうだが、正直よくわからなかったり……。まあ、わからないことは開発陣に直接聞くのがてっとり早い! というわけで、どんな技術で本作が作られたのかを解明すべく、ユビキタスエンターテインメントの開発陣へインタビューを敢行した。

 なお、ユビキタスエンターテインメントは、ネットワークコンテンツの企画・研究・開発およびコンサルテーションを業務とする会社で、ゲームとしては、これまでにスマートフォンアプリ向けに『100質』や『天空のエリュシオン』といった作品を手がけている。家庭用ゲーム機向けとしては、『GAIABREAKER(ガイアブレイカー)』が初となる。


ガイア/04

(左から)
ユビキタスエンターテインメント
・部長 柿添尚弘氏
 今回のプロジェクトの広報責任者
・ソフトウェアプログラマー 高橋諒氏
 “enchant.js”のコミッター。“enchant.js for Nintendo Web Framework”も作成
・ソフトウェアエンジニア 鎌田淳二氏
 『GAIABREAKER(ガイアブレイカー)』のディレクター
・チーフホビーオフィサー 前田靖幸氏
 今回のプロジェクトでは、おもに任天堂との折衝を担当


ガイア/01 ガイア/02

▲縦スクロールシューティングゲームの本作。自機は左右に移動でき、ショットのほか追尾ミサイルでの攻撃も行える。Wii U GamePadで遊ぶことも可能だ。

■ゲームが作りやすいエンジン“enchant.js”

――とても興味深いプロジェクトということで本日はうかがったのですが、まずはプロジェクトの経緯となった、“enchant.js”のことを教えてください。

柿添 “enchant.js”というのは、3年ほど前にオープンソースとして弊社からリリースしたゲームエンジンです。何かインタラクティブコンテンツを開発する場合、ここ10年ほどはFlashを用いるのが定番でした。でもiPhoneや最近のAndroidでは、Flashに対応しなくなっているのはご存じの通りです。そのあたりの状況が見えてきたのが3年ほど前でした。ならば業界標準になるであろうJavaScriptとHTML5で、インタラクティブなものが簡単に作れる開発環境を、と考えて開発したのが“enchant.js”なんです。

――開発陣の利便性を考えて、来るべき時代に備えて開発したツールということですね?

柿添 そうですね。JavaScriptの便利なツール集、という表現がわかりやすいかもしれません。“enchant.js”でアプリを作成すると、ひとつのソースコードで、FlashのようにAndroid、iOS、Macintosh、Windowsなどさまざまな環境で利用できるんです。環境ごとに異なる、キーボードやタッチパネルなどの違いも、吸収できるように作られています。この汎用性の高さが“enchant.js”特徴のひとつです。

――なるほど。昨今主流になっているマルチプラットフォーム・マルチスクリーンでの展開には最適ですね。

柿添 そうなんです。あと、生産性が非常に高いです。『ガイアブレイカー』は、もともとiOSで配信していた『グランダリウス ウイングストライク』(以下、『グランダリウス』)というシューティングをベースにしているのですが、『グランダリウス』のソースコードは約45000行ほどあったんですね。これを、1面だけですが“enchant.js”で書き直したところ、800行ほどに収まりました。

――それは、すごい効率化が図られましたね。

柿添 ゲームを作るときに必要となる基礎的な部分は、ほとんど“enchant.js”が担当してくれるので、開発者はゲームの実装そのものに集中できるんです。結果的に開発期間を短縮できる、つまり生産性が高いというわけです。ちなみに、ゲームだけでなく、企業の社内向けWebアプリで使用された、という事例もあります。

――“enchant.js”は、けっこう普及しているのですか?

柿添 “enchant.js”は、MITライセンスという形で無償利用できるため、じつはかなりのソフトで使われています。DeNAさんやGREEさんなどで公開されているゲームにも使われていまして、JavaScript系ゲームエンジンとしては、おそらく日本でいちばん使われているツールだと思います。

高橋 “enchant.js”のリリースと同時に、自作ゲーム投稿サイトの“9leap(ナインリープ)”(⇒記事はこちら)を開設したのですが、2ヵ月で100本以上のソフトが投稿されるほど反響は大きかったです。

前田 おかげさまで、現在は2000を超えるほどの投稿があります。

柿添 ソースコードの改変や再配布も自由なので、一般の方がプラグインを作ってくれることもあります。それを我々のほうで取り込んだりしていますね。

高橋 最近では、海外の有志の方がドキュメントを翻訳してくれたりしています。

柿添 「HTML5でこんなことができるなんてすごい!」ということで、海外で騒がれたりもしました。9leapを中心に開発者のコミュニティーがかなりできていますし、開発環境のひとつとしても業界で認知されてきているんです。たとえば、とある転職サイトでは、「どんな開発環境が使えますか」という質問のチェックボックスに、20~30ぐらいある各種開発環境のなかに“enchant.js”が含まれていたりするんです。

――なるほど。業界ではすでに市民権を獲得しているということです。とはいえ、“enchant.js”をフリーソフトで提供するというのは、英断ですね。まったく会社の利益にはならないわけですし。

柿添 はい。たしかに“enchant.js”自体では利益を生み出さないという一面はあります。ですが、まず多くの方に使っていただきたいという思いがあったんです。オープンソースで自由に展開してもらうことで、大きな流れが生まれれば……との思惑もありました。ちなみに、当社としても“enchant.js”を使ったビジネスを展開しているんです。2013年の7月に弊社が発売した“enchantMOON”という手書き用タブレットは、“enchant.js”が搭載されています。手書きタブレットの構想自体は古くからあったのですが、“enchant.js”の登場により実用化に至りました。独自のハードウェアを発売するなんて、当時は夢物語だったんですけどね(笑)。


ガイア/05 ガイア/08 ガイア/07 ガイア/06

▲柿添尚弘氏。

▲高橋諒氏。

▲鎌田淳二氏。

▲前田靖幸氏。

■“enchant.js”をWii Uでも!

――そのように発展していった“enchant.js”が、ついにWii Uに対応していったわけですね?

前田 そうなんです。昨年のGDC(ゲーム・デベロッパーズ・カンファレンス)に“enchant.js”を出展したところ、お声をかけていただき、お話が進んでいきました。で、まずは“enchant.js”を“Nintendo Web Framework”に対応させていこう、というところから始まったんです。

高橋 2013年に行われたGDCでは、任天堂さんが“Nintendo Web Framework”を発表されたのですが(⇒関連記事はこちら)、Webブラウザに近い感じの開発環境なんです。HTML5やJavaScriptでソフトを開発できるので、“enchant.js”とも親和性が高いということで、対応させることにしました。それが、“enchant.js for Nintendo Web Framework”です。

鎌田 通常のWii Uソフトを開発する場合は、C言語やC++を使用すると思うのですが、“Nintendo Web Framework”を介すると、簡単に言えばWebアプリがWii Uで動く。ですので、“enchant.js”で作成されたソフトがWii Uでも動くようになるというわけです。ただし、Wii U独自の機能、たとえばコントローラーやMiiverseなどがありますので、今回は、それを対応させるプラグインも作成しました。

――なるほど。実際にプラグインの開発をされてみていかがでしたか?

高橋 大変でした(笑)。これまでの環境ともっとも違うのは、テレビとWii Uゲームパッドで画面がふたつあるところです。ほかには、セーブデータをファイルに書き出すシステムなど、ふつうのブラウザとは違う部分がたくさんあり、悩みましたね。

前田 で、つぎの段階として、“enchant.js for Nintendo Web Framework”を使ってゲームを作ってみようということになりました。まずは、ひとつのモデルケースとして、ゲームソフトをWii Uで展開してみようと判断したんですね。そこで、iOSで展開していた自社タイトルの、縦スクロールシューティング『グランダリウス』を、きちんとWii Uに対応させようということになったんです。

柿添 “enchant.js”で作成すると、たとえほかのプラットフォームで作成したコンテンツであっても、するっとWii Uでも動かせる。そのひとつのモデルとして、シューティングゲームは非常にわかりやすいと思ったんです。


――移植作業はすんなりと?

柿添 と、いうわけでもなかったです(笑)。Wii U用にアレンジするためには、いろいろなところを変えていかなければならなくて……。

前田 オリジナルの『グランダリウス』とWii U版『ガイアブレイカー』の解像度がまったく違うので、グラフィックは全部作りなおしているんですよ。あと、本作は海外向けにも配信を予定しているのですが、『グランダリウス』という名称は英語圏では語感がよくないという意見がありまして……。そこで、『ガイアブレイカー』にタイトルを変更することにしました。

――Wii U版でこだわったポイントなどはありますか?

鎌田 Miiverseに対応させたことですね。Wii U版は、画面左側にスコアなどのゲームデータを追加したMiiverseが表示されるんですよ。あと、ほかのプレイヤーの到達点も表示されるようになっています。結果として、この連携はうまくいったのではないかと思います。ほかのユーザーと、ゆるい感じでコミュニケーションを行えるのは、実験的でおもしろくできたと思います。

――ちなみに、『ガイアブレイカー』の開発にはどれくらいかかったのですか?

高橋 プラグインを作成したのが約3ヵ月で、ゲーム本体はそれと平行して4ヵ月ぐらいでしょうか。

前田 開発人数は、トータルだと18人ぐらいですね。ただ、我々はWii Uのソフト、さらにいえば家庭用ゲーム機のソフトを開発するのは初めてなので、手練れのスタッフがたくさんいるのであれば、少し期間を短縮できたかもしれません。

――そういえば、ユビキタスエンターテインメントさんにとって、『ガイアブレイカー』は初のコンシューマー用ソフトなんですよね?

柿添 そうなんです。いろいろと新しいことに取り組んでいる弊社ですが、家庭用用ゲームまでやることになるとは思いませんでした(笑)。

高橋 話が立ち上がったときは、ちょっとびっくりしましたね(笑)。でも、楽しかったです!


ガイア/03

▲プレイ中は画面左側にほかのプレイヤーのスコアが表示される。またゲームオーバーになった地点も表示される仕組みだ。

――実際に『ガイアブレイカー』を配信してみての手応えはいかがですか?

柿添 発売を決定したら、すぐに海外のサイトでも取り上げられまして、Nintendo Web Frameworkはやはり注目されているんだなと実感しました。JavaScript、HTML5で開発してもここまで速く処理できる、というところは評価されていると思います。

――『ガイアブレイカー』は、“enchant.js for Nintendo Web Framework”でここまでの作品を作れるという、いい名刺代わりになった?

前田 そうですね。今後“enchant.js for Nintendo Web Framework”を使って、たくさんのゲームがリリースされるといいなと思っています。

――ユビキタスエンターテインメント的にも、今後も“enchant.js for Nintendo Web Framework”での取り組みは続けていく感じですか?

前田 もちろんです。“enchant.js for Nintendo Web Framework”に関しては、任天堂さんと協力して、今後もしっかりとしたサポート体制を築いていきます。HTMLプログラマーの方でもWii Uでゲームを作成でき、より参入しやすくすることが目標です。我々としては、どんな会社がどういう作品を作ってこられるか、とても楽しみにしています。私どもとしては、JavaScriptやHTML5に対するスキルはあるけれど、ゲームは作ったことがない……というクリエイターの斬新なアイデアを、とくに楽しみにしています。

――ああ、なるほど。思いもよらないアイデアが出てくる可能性もありますね。

柿添 はい。あと9leapのほうにも、一般の方から「我々も“Nintendo Web Framework”で作りたい」と問い合わせが多いです。もし日本でも“Nintendo Web Framework”が一般の方に解放されたら、サンデープログラマーのお父さんが作ったゲームを、お子さんが遊んで……なんてことが現実になるかもしれません。

前田 そうなったら、清水(清水亮氏 ユビキタスエンターテインメント 代表取締役社長 兼 CEO)の目標である、“日本国民1億総プログラマー”の夢に近づくかもしれませんね。プラグラマーって、いまの子どもからすると「なんだかつらい仕事」みたいなイメージがあるらしいんです。「プログラマーはかっこいい!」と思ってもらえるように、当社でもがんばっていきたいです。2014年1月19日から開催中の“次世代ワールドホビーフェア’14 Winter”では、“enchant.js”をベースにしたビジュアル言語“コロコロゲーム工作(クラフト)ブロック”の体験ブースを出展しているんですよ。こちらは、『月刊コロコロコミック』の人気キャラクターを使って、自分だけのゲームプログラミングを30分程度のワークショップスタイルで楽しめる……というものなのですが、興味のある方は、ぜひ立ち寄ってみてください(※)。

※“次世代ワールドホビーフェア’14 Winter”の今後の開催予定は2014年2月2日福岡ヤフオク!ドームと2月9日京セラドーム大阪。


ガイア/12

(取材・構成 ライター/喫茶板東)