【インタビュー】第7回テックヒルズ後日談…クルーズ浦田氏に聞くゲームエンジンの未来、話題のエンジン比較の真相とは?(検証コードなど追記)
11月12日にクルーズ<2138>主催で第7回テックヒルズ「Game Engines!!~どのゲームエンジンを選ぶ?~」が開かれた。テックヒルズは過去7回で応募者が累計3000人を越えるなど活発な技術勉強会。今回のテーマはモバイルゲームエンジニアの関心が高い「どのエンジンを使うべきか」だ(レポート記事)。勉強会の最後で、クルーズでネイティブ関連技術統括やテックヒルズ技術局長を務める浦田祐輝氏のエンジン比較が紹介されたが、その内容が話題となっている。比較資料のおかげで「社内でエンジンを紹介しやすくなった」という反響があった一方、2D向け開発フレームワーク「cocos2d-x」の描画(レンダリング)性能が3D向け開発エンジン「Unity」を大きく上回った点について、開発者の間で再検証する動きが出ている。
今回は浦田氏にインタビューを実施し、テックヒルズで伝えきれなかったエンジン比較の詳細や、テックヒルズの反響、そしてエンジンや業界全体の未来像について語ってもらった。テックヒルズをクルーズだけにとどめず、他社を巻き込んで、世界を視野に入れた大きなイベントに育てていく方針も明かしてくれた。(検証用コードへのリンクなどを追記した)
▲インタビューに応じてくれた浦田氏
「実は今回、私個人のSNSを通じて大きな反響がありました。特に、Unityとcocos2d-xの描画(レンダリング)性能の比較についてです。みなさんが自分でテストを実施し、その結果と私のレポート内容を突き合わせて相違点を指摘する、というように議論が盛り上がりました。全く知らない方からも連絡があって、技術的に面白い話が聞けました」
――このプレゼン資料ですね。比較の基準はどのようなものでしょう
「今回の比較ではUnity3Dを使いました。勉強会の翌日(11月13日)に公開されたUnity2D(2D機能が強化されたバージョン)は使っていません。iPhone4Sを想定端末として、両方、バッチノードだけで比較しました。512×512のサイズの1枚画像を、約50回ずつ、同じアルゴリズムで回した結果の平均値が勉強会で発表したものです」
――なぜ、バッチノードで比較したのですか
「オフスクリーンレンダリングだけの性能を比べたいと思ったのですが、私が調べた限り、Unityだとできませんでした。オフスクリーンレンダリングだと3D描画に支障が出るのかもしれません。たとえば、3D処理用にオフスクリーンレンダリングを実行しており、2D画像の描画処理に使えないようにしている可能性もあります。このあたりは機会があれば、Unity側に確認したいと思います」
「ちなみに、cocos2d-xでオフスクリーンレンダリングを使った場合はより描画性能が上がります。最初、128×128サイズの1枚画像で試したのですが、20万枚(fpsが60以下になるときのスプライト枚数)くらい出ました」
(関連リンク:今回ベンチマークとして使用した検証用コード)
「実は勉強会の前に、Unity2Dのベータ版を使って、128×128サイズの1枚画像で試していました。最初の10回の平均で3200枚くらい出ましたが、50回試行する間にかなりばらつきがあり、実質的な平均は1800枚前後でした。ばらつきが出るのは、バッチノードで処理しているからだと考えています。Unity3Dでは100枚前後くらいしか出ませんでしたが、比較対象としてよいかなと思い、Unity3Dでの調査結果を勉強会で発表しました。今回、勉強会に参加したみなさんが確認したいのは、2D特化エンジンと3D特化エンジンの性能の差だと思ったからです」
――再確認ですが、やはり2Dゲームは「cocos2d-x」ですか?
「cocos2d-xは、エンジニアがバッチノードとオフスクリーンレンダリングをきちんと操作・選択できるため、2Dゲーム制作向けにはおススメかなと思います。重たい処理でも精細な動きが可能となるオフスクリーンレンダリングが使え、フレーム飛びを防止することができます。勉強会で紹介したスプライト画像とは別の検証ですが、Atlas画像(複数画像の複合)でのスプライト画像を生成する際、Unityは弱いという点もありますね」
――反響はほかにもありましたか
「Unityやcocos2d-xを使いたい技術者の方から、導入に向けて会社を説得しやすくなった、という声が多かったですね。素直にうれしいと思いました。特にcocos2d-xは日本語の情報量やユーザー会の人数はまだ少ないため、この勉強会をきっかけにcocos2d-x界隈が盛り上がればいいな、と期待する方もいらっしゃいました」
「『enchant.js』については、ユビキタスエンターテイメントの清水亮社長が登壇したところを初めて見た、という反響もありました。海外出張などで多忙ななか、貴重な機会をいただけました。とても面白い講演で、講演そのものではちょっと負けた感がありましたね(笑)。清水社長にはライブコーディングの対決を挑みましたので、いつかエンジニアとして白黒つけたいと思います (笑)。KLab<3656>が発表した『Playground』はオープン化が9月後半と間もなく、ユーザー会も数十人規模なので、今後のユーザー層拡大に期待したいところです」
「ひとつは、来年ごろ、Unityが2D部分の性能でcocos2d-xに追いつくと考えています。Unityは新しいGUI(グラフィカルユーザーインターフェース)であるuGUIを4ヶ月後にリリースした後、そこから2カ月くらいかけて2Dの性能を上げてくると思います。一方cocos2d-xは、すでにcocos3DやHTML5版もあり、今後、公式エディタである『CocoStudio』がMac対応を進めるなどして、どんどんUnityに近づいていくのかなと思っています。Unityが王道として走っているところに、あらゆるエンジンが収斂していくというイメージです」
「もうひとつ、有料のものがなくなってくるとみています。有料の値段が下がったり、クラウド化したり、無料になったり、なるべく多くの人に使われるような提供方法になっていくと思います」
「個人的にはProject Anarchyに期待したいですね。日本で使っている人が本当に少なく、情報も乏しい。無ければ自分でユーザー会を作ってしまおうかと考えています。UI(ユーザーインターフェース)面などでUnityに劣ってはいるものの、物理エンジンはコンシューマーゲームで使われているHavokのエンジンを使用しているので、化ける可能性はありそうです。HavokのエンジンはUnityのエンジンよりも難しい処理を細かく計算できるため、Unityにわざわざ入れている人がいるくらいのものです。モバイルゲームはiOS対応が重要なので、Mac環境への対応も必要ですね」
――技術者の立場から見て、ゲーム業界全体の未来はどう見えますか
「すでに言われているように、ブラウザゲームからネイティブゲームにシフトしていくとは思います。ただ、僕が今考えているのは、ネイティブ向けにゲームを作った後、ボタン押せばブラウザ向けに同じものが作れる、つまりブラウザとネイティブを同時に出せるようなエンジンが現れることです。cocos2d-xの対応言語はC++ですが、HTML5もあり、JavaScriptを使ってほぼ同じ関数で書けてしまいます。今後、JavaScriptでプログラムを書けば、ブラウザゲームとして作ったものを、C++にすぐに変換する機能が出てくる可能性があります」
――それは理想の機能ですね。実現すれば何が起こると思いますか
「実現すれば、ブラウザゲームがネイティブに比べて遜色なくなっていきます。cocos2d-xがHTML5に対応したことは、その狙いがあるのかなと思っていますし、決して夢物語ではないと考えています」
「僕の所属するクルーズには"オモシロカッコイイをツクル"という夢がありますが、それに絡めて言うなら、実現するとエンジニアが"オモシロイ"を作ることに徹することができます。(HTMLに精通した)マークアップ・エンジニアとネイティブに精通したエンジニアが両方必要だという状況から、片方がいれば両方作れるという状況に変わり、エンジニアにも組織にも余裕が生まれます。その余裕を使って、エンジニアがエンジニアとしての視線でプランニングできるようになり、開発がもっと楽しくなります。ひいては"オモシロイ"ゲームの開発につながるでしょう。もし、そんなエンジンが出てこなければ、僕が勝手に作ります(笑)」
――いちゲームファンとしても、日本の技術水準が向上し、その未来が実現すればいいと思います
「そのためにも、テックヒルズを強化したいと思っています。最先端の技術を拾い上げ、テックヒルズから発信される情報が最新だと言われるようにするのが目標です。日本の情報や技術、ツールなど米国に比べて遅れている面もあるので、日本ではあまり使われていない技術や情報を共有する場にしたい、と考えています」
「第7回は、僕がいまゲームエンジンに関わっているので、知らない情報が全部欲しい、なら主要エンジンの代表者を全員集めよう、と考えて企画しました。本当にみなさんに登壇してもらえるとは思っていなかったので、イベント中、すごい機会になったなあ、と自分でも驚いていました(笑)。僕もそうですが、わくわくしながら最先端の技術に飛びつくのはエンジニア。そういう人たちに向けて新しい話を出していきたい」
――まるでTED(米国で年1回開かれる大規模な世界的講演会)のようですね
「そうですね。実際、日本では、こんなに人が集まる技術勉強会はないと思います。多くの人を集めるだけでなく、限られた少人数で、より一層深い話や情報交換、技術研究を行う勉強会やハッカソンも開催していきます。そしてテックヒルズをクルーズだけで終わらせないつもりです。これからはIT技術系の他社さんにも運営にどんどん関わってもらいたいと考えています」
「理想はテックヒルズを、新技術のリーダーを生むイベントにまで育てることです。特に技術的探究心を持つ若い人に関わってもらい、最先端を追い求めていきたいです。大げさかもしれませんが、ゆくゆくはテックヒルズを日本の技術界の発展につなげ、日本の技術力を世界に発信していくきっかけにできればと思っています。テックヒルズも僕もクルーズも世界を視野に頑張っていますが、戦力はまだまだ十分とはいえません。僕やクルーズのビジョンに共感して、いっしょに世界を目指して働ける仲間がもっと欲しいですね」
小学生からプログラミングを始める。3社のソーシャルアプリ会社を立ち上げ、CTOを経て2012年にクルーズに入社。現在、クルーズにてネイティブ関連の統括や、テックヒルズ技術局長を務めると同時に、子会社のソーシャルゲームアカデミーにて代表講師を務めている。
▲クルーズ名物「芝生部屋」にて
・テックヒルズ
・ソーシャルゲームアカデミー
今回は浦田氏にインタビューを実施し、テックヒルズで伝えきれなかったエンジン比較の詳細や、テックヒルズの反響、そしてエンジンや業界全体の未来像について語ってもらった。テックヒルズをクルーズだけにとどめず、他社を巻き込んで、世界を視野に入れた大きなイベントに育てていく方針も明かしてくれた。(検証用コードへのリンクなどを追記した)
▲インタビューに応じてくれた浦田氏
■議論の沸いた「Unity」vs「cocos2d-x」
――テックヒルズを終えて、反響はありましたか?「実は今回、私個人のSNSを通じて大きな反響がありました。特に、Unityとcocos2d-xの描画(レンダリング)性能の比較についてです。みなさんが自分でテストを実施し、その結果と私のレポート内容を突き合わせて相違点を指摘する、というように議論が盛り上がりました。全く知らない方からも連絡があって、技術的に面白い話が聞けました」
――このプレゼン資料ですね。比較の基準はどのようなものでしょう
テックヒルズ第7回資料 次世代ゲームエンジンの比較 ※ from 祐輝 浦田
(※資料内で「UnrealEngine」と表記している箇所があったが、正確には「UnrealDevelopmentKit(UDK)」での検証であり、内容に一部誤解を招く表現があったため、勉強会時点から修正が加えられた)
「前置きになりますが、描画処理には大きく分けて2つの種類があります。ひとつはオフスクリーンレンダリングといって、GPU(画像を処理する半導体チップ)を上手く使い、ユーザーから見えない部分に描画し、見えている部分と置き換えるというものです。これはCPUとGPUの両方を活用します。もうひとつはバッチノードといい、1枚の画像をメモリキャッシュに保持して読み込むという手法で、こちらはCPUしか使っていません。オフスクリーンレンダリングでGPUを活用したほうが、重い描画でもちらつきにくくなります」「今回の比較ではUnity3Dを使いました。勉強会の翌日(11月13日)に公開されたUnity2D(2D機能が強化されたバージョン)は使っていません。iPhone4Sを想定端末として、両方、バッチノードだけで比較しました。512×512のサイズの1枚画像を、約50回ずつ、同じアルゴリズムで回した結果の平均値が勉強会で発表したものです」
――なぜ、バッチノードで比較したのですか
「オフスクリーンレンダリングだけの性能を比べたいと思ったのですが、私が調べた限り、Unityだとできませんでした。オフスクリーンレンダリングだと3D描画に支障が出るのかもしれません。たとえば、3D処理用にオフスクリーンレンダリングを実行しており、2D画像の描画処理に使えないようにしている可能性もあります。このあたりは機会があれば、Unity側に確認したいと思います」
「ちなみに、cocos2d-xでオフスクリーンレンダリングを使った場合はより描画性能が上がります。最初、128×128サイズの1枚画像で試したのですが、20万枚(fpsが60以下になるときのスプライト枚数)くらい出ました」
(関連リンク:今回ベンチマークとして使用した検証用コード)
■2D開発なら、やはり「cocos2d-x」
――今回使わなかったUnity2Dの性能はどうでしょう「実は勉強会の前に、Unity2Dのベータ版を使って、128×128サイズの1枚画像で試していました。最初の10回の平均で3200枚くらい出ましたが、50回試行する間にかなりばらつきがあり、実質的な平均は1800枚前後でした。ばらつきが出るのは、バッチノードで処理しているからだと考えています。Unity3Dでは100枚前後くらいしか出ませんでしたが、比較対象としてよいかなと思い、Unity3Dでの調査結果を勉強会で発表しました。今回、勉強会に参加したみなさんが確認したいのは、2D特化エンジンと3D特化エンジンの性能の差だと思ったからです」
――再確認ですが、やはり2Dゲームは「cocos2d-x」ですか?
「cocos2d-xは、エンジニアがバッチノードとオフスクリーンレンダリングをきちんと操作・選択できるため、2Dゲーム制作向けにはおススメかなと思います。重たい処理でも精細な動きが可能となるオフスクリーンレンダリングが使え、フレーム飛びを防止することができます。勉強会で紹介したスプライト画像とは別の検証ですが、Atlas画像(複数画像の複合)でのスプライト画像を生成する際、Unityは弱いという点もありますね」
■「会社を説得しやすくなった」「ユーザー会盛り上がれば」などの反響も
――反響はほかにもありましたか
「Unityやcocos2d-xを使いたい技術者の方から、導入に向けて会社を説得しやすくなった、という声が多かったですね。素直にうれしいと思いました。特にcocos2d-xは日本語の情報量やユーザー会の人数はまだ少ないため、この勉強会をきっかけにcocos2d-x界隈が盛り上がればいいな、と期待する方もいらっしゃいました」
「『enchant.js』については、ユビキタスエンターテイメントの清水亮社長が登壇したところを初めて見た、という反響もありました。海外出張などで多忙ななか、貴重な機会をいただけました。とても面白い講演で、講演そのものではちょっと負けた感がありましたね(笑)。清水社長にはライブコーディングの対決を挑みましたので、いつかエンジニアとして白黒つけたいと思います (笑)。KLab<3656>が発表した『Playground』はオープン化が9月後半と間もなく、ユーザー会も数十人規模なので、今後のユーザー層拡大に期待したいところです」
■すべてが「Unity」になる?「無償化」広がる可能性も 期待は「Project Anarchy」
――ゲーム開発エンジンの今後について、見通しはありますか「ひとつは、来年ごろ、Unityが2D部分の性能でcocos2d-xに追いつくと考えています。Unityは新しいGUI(グラフィカルユーザーインターフェース)であるuGUIを4ヶ月後にリリースした後、そこから2カ月くらいかけて2Dの性能を上げてくると思います。一方cocos2d-xは、すでにcocos3DやHTML5版もあり、今後、公式エディタである『CocoStudio』がMac対応を進めるなどして、どんどんUnityに近づいていくのかなと思っています。Unityが王道として走っているところに、あらゆるエンジンが収斂していくというイメージです」
「もうひとつ、有料のものがなくなってくるとみています。有料の値段が下がったり、クラウド化したり、無料になったり、なるべく多くの人に使われるような提供方法になっていくと思います」
「個人的にはProject Anarchyに期待したいですね。日本で使っている人が本当に少なく、情報も乏しい。無ければ自分でユーザー会を作ってしまおうかと考えています。UI(ユーザーインターフェース)面などでUnityに劣ってはいるものの、物理エンジンはコンシューマーゲームで使われているHavokのエンジンを使用しているので、化ける可能性はありそうです。HavokのエンジンはUnityのエンジンよりも難しい処理を細かく計算できるため、Unityにわざわざ入れている人がいるくらいのものです。モバイルゲームはiOS対応が重要なので、Mac環境への対応も必要ですね」
■ネイティブとブラウザを同時開発できるエンジンが出現?
――技術者の立場から見て、ゲーム業界全体の未来はどう見えますか「すでに言われているように、ブラウザゲームからネイティブゲームにシフトしていくとは思います。ただ、僕が今考えているのは、ネイティブ向けにゲームを作った後、ボタン押せばブラウザ向けに同じものが作れる、つまりブラウザとネイティブを同時に出せるようなエンジンが現れることです。cocos2d-xの対応言語はC++ですが、HTML5もあり、JavaScriptを使ってほぼ同じ関数で書けてしまいます。今後、JavaScriptでプログラムを書けば、ブラウザゲームとして作ったものを、C++にすぐに変換する機能が出てくる可能性があります」
――それは理想の機能ですね。実現すれば何が起こると思いますか
「実現すれば、ブラウザゲームがネイティブに比べて遜色なくなっていきます。cocos2d-xがHTML5に対応したことは、その狙いがあるのかなと思っていますし、決して夢物語ではないと考えています」
「僕の所属するクルーズには"オモシロカッコイイをツクル"という夢がありますが、それに絡めて言うなら、実現するとエンジニアが"オモシロイ"を作ることに徹することができます。(HTMLに精通した)マークアップ・エンジニアとネイティブに精通したエンジニアが両方必要だという状況から、片方がいれば両方作れるという状況に変わり、エンジニアにも組織にも余裕が生まれます。その余裕を使って、エンジニアがエンジニアとしての視線でプランニングできるようになり、開発がもっと楽しくなります。ひいては"オモシロイ"ゲームの開発につながるでしょう。もし、そんなエンジンが出てこなければ、僕が勝手に作ります(笑)」
■世界を視野に「テックヒルズをクルーズだけにとどめない」
――いちゲームファンとしても、日本の技術水準が向上し、その未来が実現すればいいと思います「そのためにも、テックヒルズを強化したいと思っています。最先端の技術を拾い上げ、テックヒルズから発信される情報が最新だと言われるようにするのが目標です。日本の情報や技術、ツールなど米国に比べて遅れている面もあるので、日本ではあまり使われていない技術や情報を共有する場にしたい、と考えています」
「第7回は、僕がいまゲームエンジンに関わっているので、知らない情報が全部欲しい、なら主要エンジンの代表者を全員集めよう、と考えて企画しました。本当にみなさんに登壇してもらえるとは思っていなかったので、イベント中、すごい機会になったなあ、と自分でも驚いていました(笑)。僕もそうですが、わくわくしながら最先端の技術に飛びつくのはエンジニア。そういう人たちに向けて新しい話を出していきたい」
――まるでTED(米国で年1回開かれる大規模な世界的講演会)のようですね
「そうですね。実際、日本では、こんなに人が集まる技術勉強会はないと思います。多くの人を集めるだけでなく、限られた少人数で、より一層深い話や情報交換、技術研究を行う勉強会やハッカソンも開催していきます。そしてテックヒルズをクルーズだけで終わらせないつもりです。これからはIT技術系の他社さんにも運営にどんどん関わってもらいたいと考えています」
「理想はテックヒルズを、新技術のリーダーを生むイベントにまで育てることです。特に技術的探究心を持つ若い人に関わってもらい、最先端を追い求めていきたいです。大げさかもしれませんが、ゆくゆくはテックヒルズを日本の技術界の発展につなげ、日本の技術力を世界に発信していくきっかけにできればと思っています。テックヒルズも僕もクルーズも世界を視野に頑張っていますが、戦力はまだまだ十分とはいえません。僕やクルーズのビジョンに共感して、いっしょに世界を目指して働ける仲間がもっと欲しいですね」
■浦田氏のプロフィール
浦田祐輝(うらたゆうき)小学生からプログラミングを始める。3社のソーシャルアプリ会社を立ち上げ、CTOを経て2012年にクルーズに入社。現在、クルーズにてネイティブ関連の統括や、テックヒルズ技術局長を務めると同時に、子会社のソーシャルゲームアカデミーにて代表講師を務めている。
▲クルーズ名物「芝生部屋」にて
■関連リンク
・クルーズ・テックヒルズ
・ソーシャルゲームアカデミー
会社情報
- 会社名
- クルーズ株式会社
- 設立
- 2001年5月
- 代表者
- 代表取締役社長 小渕 宏二
- 決算期
- 3月
- 直近業績
- 売上高140億円、営業利益6億4400万円、経常利益6億2800万円、最終利益2億5400万円(2023年3月期)
- 上場区分
- 東証スタンダード
- 証券コード
- 2138
会社情報
- 会社名
- 株式会社UEI
- 設立
- 2003年8月