• はてなブックマークに追加
  • Yahoo!ブックマークに登録
スマートフォン向けクロスプラットフォーム・ゲームエンジン強化
DeNA川崎氏が語る──秒速で進化する「ngCore」の全貌
DeNAおよびそのグループ企業である米ngmoco社が開発・提供する「ngCore」。業界の中でも最先端と言われるスマートフォン向けクロスプラットフォーム・ゲームエンジン。その現在の開発状況を、DeNAの最高技術責任者を務める川崎修平氏に聞いた。
(取材・文/広重隆樹 総研スタッフ/宮みゆき 撮影/栗原克己)作成日:11.12.15
両OS対応変換エンジンから、統合的なクロスプラットフォーム環境へ
川崎 修平氏
株式会社ディー・エヌ・エー
取締役最高技術責任者

川崎 修平氏

 DeNAが開発・提供する「ngCore」は、ソーシャルゲームプラットフォーム「Mobage」のスマートフォン向けゲーム開発エンジンだ。もともとは米ngmoco社が開発を始めたものだが、2010年にDeNAが同社を買収したことにより、単なるゲームエンジンとしてだけではなく、DeNAが世界で展開するMobage向けアプリ開発戦略、プラットフォーム展開の中核に担うものとして位置付けられ、日米共同で急速に拡張が図られてきた。

 いま雪崩を打ってスマートフォン向けにシフトするソーシャルゲーム開発の現場だが、代表的なスマートフォンOSであるiOSやAndroidは、それぞれ独自のAPIを持ち、またObjective-C、Javaなど開発言語も異なる。そのため、両OSに対応するアプリケーション開発者はこれまで大きな負担を強いられてきた。

 しかしngCoreを使うとその開発工数が大幅に削減される。2つのOS向けに別々のソースを記述する必要がない。JavaScriptで記述されたプログラムが両プラットフォームで動作する。Objective-CやJavaを知らなくてもJavaScriptのみでMobageプラットフォーム向けのアプリケーション開発ができるようになる。さらには、Mobageの持つソーシャルAPIを利用して、開発したアプリケーションを全世界に展開できる──など様々な利点がある。

 DeNAでngCore開発を指揮する川崎修平氏は、開発の現状について次のように語る。
今年の6月ごろの話では、JavaScriptでネイティブ並みのパフォーマンスのものをAndroidやiOS用に開発できるという部分が、ngCoreの一番の売りでした。ただ、マルチプラットフォームで開発できるエンジンというと今は、UnityやAdobe AIR、Unreal Engineなどたくさん出ています。それだけを見るとngCoreも同じなのですが、違うのは単なるアプリ開発のプラットフォームというよりも、さらにWeb上で様々なサービス提供できるプラットフォームになることを目標としているところです」

Mobage Service Architecture
プロトタイプ完成!「ngCore for HTML5」が目指すもの

 スマートフォン、とりわけそこに搭載されるブラウザの機能は発展の余地を残した進行形の技術だ。当初はスマートフォン・ブラウザだけではカジュアルなゲームしかできないので、それを補う意味もあって、ネイティブコードでのアプリ開発が進められてきた。ネイティブコードでスマートフォンの各機種に対応することが必要だったのだ。

 しかし、スマートフォン・ブラウザの機能向上は目ざましい勢いで進んでいる。今後はHTML5とCSSのみでより複雑なゲームが楽しめるようになる。
「そこで私たちはいまHTML5版のランタイムで動くngCoreを開発しています。アプリ同様にJavaScriptで書いて、それをAndroidとiOSにパブリッシュできます。いまはまだプロトタイプの状態ですが、かなりいい動きをしています」
 と川崎氏は言う。

 HTML5版のngCore。ここでは仮に「ngCore for HTML5」としておくが、この開発が進んでいることは、ゲーム・デベロッパーにはグッドニュースだ。周知のように、HTML5のコードに準拠すれば、これまでのWebページのように文字や映像を表示するだけでなく、ブラウザの中でアプリを自在に動かせるようになる。操作ボタンやインタラクティブな画面設計も可能だ。当然、iPhone も AndroidもブラウザはHTML5対応だから、開発者はWebページを送信する感覚でWebアプリをスマートフォンに配信できるというわけだ。

 こうしたHTML5対応のWebアプリの進展は、App StoreとAndroidマーケットの二者による市場寡占状態を変えるかもしれない。そしてそれは相対的に、スマートフォンにおけるMobageプラットフォームの優位性を高めるという効果もある。「ngCore for HTML5」の登場は、アプリ配信だけでなく、煩雑なアップデート作業においても大きな前進を意味する。ソーシャルゲームでは、リリース後のアップデートは頻繁に行われる。ユーザーの反応を見ながら、より操作性や収益性を高める改修作業が連日のように行われるからだ。ネイティブ・アプリだとアップデートのたびに、各OSのアプリマーケットの審査を待たなければならない。

「たとえアプリマーケット側が審査作業を毎日やって、アップデートをスムーズに通してくれたとしても、ユーザーがマーケットに行ってアップデート作業をしなくてはいけない状況は変わらない。これはユーザーにとっても開発者にとっても手間です。その点、HTML5対応のWebゲームならユーザーが意識することなく、ライブアップデートが行われます。HTML5対応を進めることで、本来のソーシャルゲームの運用に適したプラットフォームが生まれる。ngCoreの存在価値はそこにあります」と、川崎氏は続ける。

 もちろん、これによってネイティブ・アプリがすべてなくなるわけではない。
「ブラウザ上だけでは完結しないアプリもあるので、Mobageと、App StoreやAndroidマーケットは競合ではなく、今後も共存します。デベロッパー観点に立てば、一つのコードを生成して、後はこれはネイティブで出すとか、これはHTML5版で出すとかを自由に選べばいい。更新方法の違いでは、HTML対応のWebゲームが有利だけれど、ネイティブ・アプリでないと実現できない表現もありますから、どちらを採るかはデベロッパーの考え次第ということになります」
 と、川崎氏がここまで語った内容は、ngCore全体の中では、クライアントアプリ開発に関わる「ngCore Client」の機能についての話だ。これは、Mobage SDKとも呼ばれる部分である。

調整はデザイナーに任せ、プログラムはよりコア開発に集中──「ngBuilder」

 ngCoreは、クライアントアプリ開発部分だけでなく、ソーシャルゲームのサーバサイド実装を容易にするJavaScriptベースのフレームワーク「ngCore Server」や、ゲーム開発を容易にするためのライブラリ群「ngGo」、ゲーム開発のためのサポート環境「ngBuilder」などを含む統合開発環境だ(図参照)。

 構成要素の一つngBuilderには、デバッガ、JavaScriptプロファイラ、ngCoreの環境管理などのサポート機能が搭載されている。
「これまでは、デザイナーさんがキャラクターの動きやマップをいじりたいときには、どうしてもプログラマにツールの開発を頼まなければいけませんでした。これをできるだけデザイナーさんだけでもできるようにというのがngBuilderの狙い。まだ最初の実装の段階で、現状ではアナライザー向けの開発サポートツールになっていますが、この部分を拡張すれば、デザイナーとプログラマの役割分担がより明確になり、ゲーム開発の効率が高まると考えています。いわば、ゲームの開発工程のなかでデザイナーができることをプログラマから分離していくわけです」(川崎氏)

 逆にいえば、パラメータの調整などはデザイナーに任せ、プログラマはゲーム本来のロジック開発に集中できるようになる。こうした分担作業はコンソールゲームを開発していたエンジニアには当たり前のこと。しかしWeb業界では必ずしも標準ではなかった。ngBuilderのようなツール群でサポートすることで、それが可能になる。

 もともとngCoreを開発してきたngmoco社はコンソールゲームが出発点。そのためngCoreにはコンソールゲーム開発の色が残っている。それがDeNAに買収されたことで、Webアプリ開発とのよい意味でのハイブリッド、相乗効果が生まれつつあるのだ。

“コンソール・ライク”なUI開発といっても、もちろん、DeNAのソーシャルゲーム開発が今後、コンソールゲームのような大人数・長期の開発体制に移行するわけではない。しかし、分担が明確になることで、これまでコンソールゲームの開発手法に慣れたエンジニアが、ソーシャルゲーム開発に移行する上での障害は一つ少なくなる。

参照図
クライアントとサーバーサイドをJavaScriptで統一──「ngServer」

ngGoは、ゲーム開発を簡単にするためのライブラリ群だ。シーン管理、モーション管理、アセット管理、OpenGLベースのUIパーツなどを今後サポートしていく。例えば、アクションゲームで勇者の剣から炎が立ちあがるシーン。これは専用のパーティクルエンジンで描画されることが多い。パラメータをいじることで、炎の出方の調整もできる。これらngGoのライブラリ群は、ngBuilderと連携して動く。

「アニメーションの動き方のデータや素材のデータをngBuilder側ではき出し、それをngGoのライブラリが読み込んで表示するといった、両方の連携がこれから密になります。両者を一体化してもいいぐらい」と、川崎氏は開発の方向性を述べる。

「ngServer」の機能についても簡単に触れておこう。ngServer自体は、簡単にいえばJavaScriptで動くWebサーバーだ。
「JavaScriptを使っていることで、クライアント側とサーバー側とが同じロジックを共有することができます。これはソーシャルゲームにおいては極めて重要なこと」と川崎氏は指摘する。
「例えば、クライアント側で処理したデータの正当性をサーバー側で検証するときに、それぞれが違うアーキテクチャで書かれていると、検証ロジックをぞれぞれの言語で書かなくてはいけない。同じJavaScriptベースならクライアントとサーバーで共通の検証ロジックが使えるようになります。データの正当性チェックが簡単になるということですね」

 さらに、ngServerにはMobageのサーバサイドにアクセスする機能がデフォルトで組み込まれている。従来は通信のプロトコルだけが定義されていて、実際の通信機能はデベロッパーが自分で実装する必要があった。それをデフォルトで提供するようにしたわけだ。

「優れたアイディアを持つ開発者たちの勢いを止めるな」

 ngCore全体の設計思想は、「優れたアイディアを持っている開発者たちの勢いを止めない」(川崎氏)ということだ。ベーシックな品質は予めツール類でサポートしていくので、開発者はよりコアなゲーム開発に専念できる。

 そこで作られたゲームが運良くヒットし、膨大なトラフィックが押し寄せて来た場合も、容易にスケールできるような柔軟なサーバー構成になっているのも特徴の一つ。さらに、HTML5への対応を充実させることで、App StoreやAndroidマーケットに過度に依存せずに、ブラウザベースのゲームとして独立できるような方向づけが行われている点も、重要なポイントになる。

 こうしてツールやサポート体制が整ってくることで、ゲーム開発者に求められる質もより高まるはずだ。
「やはり品質に違いを出せる人が、これからは重要になってくる。同じアニメーションや遷移の画面を作っていても、微妙な配置や動きのタイミングでゲームの印象が全く違ったものに見えるということはよくある。ソーシャルゲームにおけるワクワク感は、デザイナーだけでなく、プログラマの力によるところも大きい。そうしたセンスを磨いた人が、より面白いゲームを作れるようになると思います」

 今回、川崎氏が話したngCoreの新機能の全体像が見えるようになるのは、2012年1月の予定。そのマイルストーンをめざし、DeNAの国内開発チームと、サンフランシスコのngmoco社チームとの共同開発は、太平洋を越え、年をまたがって、さらに緊密さを増していく。「既存のゲーム業界にいるエンジニアはもとより、これからスマートフォン・ゲームを開発したいと考えるすべてのエンジニアに向けて、世界一の開発環境を提供したい」──両者の思いは一致している。

株式会社ディー・エヌ・エー 取締役最高技術責任者 川崎 修平氏
1975年生まれ。早稲田大学・大学院、東京大学大学院博士課程了。在学中にDeNAにアルバイト入社。2004年4月に正社員となる。携帯電話向けオークションサイト「モバオク」、アフィリエイトサービス「ポケットアフィリエイト」、携帯サイト「Mobage」を開発。その他多くのサービスの開発・運用に携わる。2007年6月、取締役に就任。
  • はてなブックマークに追加
  • Yahoo!ブックマークに登録
あなたを求める企業がある!
まずはリクナビNEXTの「スカウト」でチャンスを掴もう!
スカウトに登録する

このレポートの連載バックナンバー

人気企業の採用実態

あの人気企業はいま、どんな採用活動を行っているのか。大量採用?厳選採用?社長の狙い、社員の思いは?Tech総研が独自に取材、気になる実態を徹底レポート。

人気企業の採用実態

このレポートを読んだあなたにオススメします

スマートフォン、クラウド、LAMP、データマイニング、シゴトetc.

新年会CROSSでDeNAが語ったWebテクノロジー展望とは

人気企業の採用実態「エンジニアサポート新年会2012 CROSS」は、Webテクノロジーに関わるエンジニアが集まり、未来の展望を語り合う勉強会だ…

新年会CROSSでDeNAが語ったWebテクノロジー展望とは

スマートフォンの進撃、ライトユーザー増加、開発環境の整備etc.

DeNAが描く、数千億円規模のソーシャルゲーム市場予測

人気企業の採用実態DeNAは8月6日、ソーシャルゲームに関心のあるエンジニアやクリエイター向けに「DeNA Social Game …

DeNAが描く、数千億円規模のソーシャルゲーム市場予測

CTO川崎修平氏、木村秀夫氏がゲームエンジン「ngCore」を語る

DeNAのスマートフォン向け開発はngCoreでどう変わる?

人気企業の採用実態スマートフォン向けソーシャルゲーム開発エンジン「ngCore」を、自社アプリ開発だけでなく、サードパーティのゲーム開発企業にも提…

DeNAのスマートフォン向け開発はngCoreでどう変わる?

南場社長、守安COO、DeNAのスーパー・エンジニアが語る

DeNAの成長戦略X-device、X-borderを支える技術力とは

人気企業の採用実態「モバゲータウン」のサービス名称を「Mobage」に変更し、グローバル展開が本格化するDeNA。あらゆる情報端末に対応する「X-…

DeNAの成長戦略X-device、X-borderを支える技術力とは

開発者末永氏と、ソーシャルゲーム開発リーダー広瀬氏が明かす

DeNAが開発した新たなフレームワークGunyaSiFとは?

人気企業の採用実態ソーシャルゲームやアプリ開発を全面サポートする機能を搭載したフレームワーク「GunyaSiF」。それはソーシャルゲーム…

DeNAが開発した新たなフレームワークGunyaSiFとは?

こんな時代に人事が欲しがる

年収1000万円超プレイヤーの自己投資術

不景気だから年収が下がるのは当たり前、と思ってはいませんか? 世の中には、こんな時代でも年収が上がり続ける「不況知らず…

年収1000万円超プレイヤーの自己投資術

この記事どうだった?

あなたのメッセージがTech総研に載るかも

あなたの評価は?をクリック!(必須)

あなたのご意見お待ちしております

こちらもお答えください!(必須)

歳(半角数字)
(全角6文字まで)
  • RSS配信
  • twitter Tech総研公式アカウント
  • スカウト登録でオファーを待とう!
スマートグリッド、EV/HV、半導体、太陽電池、環境・エネルギー…電気・電子技術者向け特設サイト

PAGE TOP