ゲーム制作の民主化を実現し、その応用領域を拡大するUnityとは?
電子システムの開発業務を支えるキーパーソンに、技術や製品開発の動向などについて話をうかがうインタビューの第3弾。今回は、DSF2017にて講演予定のユニティ・テクノロジーズ・ジャパン(Unity)の伊藤 周氏に話を聞いた。
Unityは一般的にゲーム・エンジンと称されるゲーム・コンテンツの統合開発環境「Unity」を提供する世界的なツール・ベンダ。既に同社の開発環境はモバイルやブラウザゲーム制作におけるデファクト・スタンダードとなっており、その応用領域を広げつつある。開発の容易化・効率化、マルチ・プラットフォーム対応など、Unityの実現しているコンセプトは組込みシステム開発分野にも応用できるのだろうか。聞き手はDSF2017実行委員の辻 邦彦 氏。
(左)ユニティ・テクノロジーズ・ジャパン合同会社 エバンジェリスト 伊藤 周 氏、辻 邦彦 氏(手前右、聞き手)Design Solution Forum実行委員
Unityとは?
辻:Unityはゲーム・エンジンとして有名ですが、組込みシステム開発の世界では知らない方も多いのではないかと思います。具体的にどのような開発環境なのか教えて下さい。
伊藤:分かり易く言うとゲームのコンテンツを簡単に作れる統合開発環境です。ソフトウェア開発で言うところの「Visual Studio」に当たるものですが、より直感的で容易なコンテンツ開発が可能で、描画や物理などベース部分を意識せずにゲームを開発する事が可能です。
2000年代前半頃からゲーム開発において、ベース部分とその上(ゲームの中身)を分離しようという動きが出始め、2006年頃からUnityの本格的な開発がスタートしました。
Unityの創始者がファースト・プライオリティとして掲げているのが、「ゲーム制作の民主化」すなわち、誰もがゲームを作れるという考え方で、その中にはマルチ・プラットフォームという考え方も含まれています。
辻:マルチ・プラットフォームについてもう少し詳しくお聞かせ下さい。
伊藤:ご存知の通りゲームを楽しむ環境は様々で、市販のゲーム専用機以外にパソコンやスマートフォンなどのモバイル端末もあります。モバイル端末としてはiOSとAndroidが主流ですが、これらOSも含め全てのプラットフォームで動くゲームを単一の開発環境で開発するというのが、Unityの考え方です。
辻:なるほど。組込みシステムの世界にも様々なプラットフォームがあり、マルチ・プラットフォームに対応するという事の意味の大きさは良く分かります。実際のところUnityとして「ゲーム制作の民主化」はどの程度実現されているのでしょうか?
伊藤:ゲーム制作の民主化は既に実現出来ていると考えています。現在、Unityの利用者数と共にその世界的なコミュニティは年々拡大しています。「unite」と呼ぶUnityユーザーのカンファレンスは、日本国内の開催で約5,000人、海外では更に多くの参加者が集まる規模となっていまして、中国では8,000人近く集まったりしています。
最近のトピックスとしては、一般の方がUnityで開発した任天堂「Switch」用のインディーズ系のゲームが発売されました。何とそのゲームが11万本も売れていたりするんです。
辻:一般の人が任天堂のゲーム機のゲームを開発して販売するというのは、一昔前では考えられないとても画期的な事ですね。
伊藤:プロの方がゲーム開発を行うときでも、iOS/Androidマルチ・プラットフォーム対応のモバイル向けゲーム開発環境としては、Unity以外に選択肢が無いと言っても過言ではない状況です。
辻:ゲーム以外の分野でUnityが使われている事例はあるのでしょうか?
伊藤:様々な分野でUnityの利用が広がりつつあります。最近ではAR(Augmented Reality)のコンテンツ制作などにも用いられています。Unity利用者の数としては国内では約1割程度はゲーム制作以外になってきているのではないでしょうか。
少し前に記事になった話としては、ヤマハさんが自動運転シミュレーション用のソフト開発でUnityを利用したという事例もあります。
※ゲーム開発ツールを活用しバーチャルテスト環境を作る(東洋経済ONLINE)
辻:これはUnityで作ったバーチャルな環境でシミュレーションソフトを動かすという話ですね。Unityを用いる事で容易に空間をバーチャライズ/ビジュアライズする事ができるんですね。これはとても興味深い事例だと思います。
組込みシステム開発とUnity
辻:組込みシステムという視点では、Unityはどのようなプラットフォームに対応しているのでしょうか?
伊藤:x86/Linux,Windows、ARM/Androidに対応しています。
辻:Unityの組込みシステム開発への応用を考えた場合、やはり何らかの「嬉しさ」が必要になると思いますが、Unityの嬉しさとしてどんな事が挙げられますか?
伊藤:一つは描画がリッチになると言えると思います。例えばUI開発などにも使えます。
辻:確かに組込みシステムのUIはあまりイケてないものが多いので、Unityを用いてUIを良くするというのは一つのモチベーションになりますね。あと個人的に思うのは、組込みUI開発は非常に手間が掛かるのですが、今でも昔ながらの泥臭い開発手法が主流だったりするので、Unityの考え方みたいなものを取り込んで、UI開発自体の生産性を向上できたら非常に嬉しいと思います。これはUI開発に限らず組込みシステム開発全体に言えることかもしれませんが。
伊藤:ご指摘の通り生産性というのは非常に重要だと思います。実は私自身、元々SEGAでアーケード・ゲームの開発をしていたのですが、運良くSEGAとして初めてUnityを使うプロジェクトに携わり、その時Unityの生産性によって今後のゲーム開発はガラリと変わる、そう実感したのを覚えています。
辻:それをきっかけにUnityに?
伊藤:はい。Unityを使ったプロジェクトを最期に、Unityを自らの本業にしようとUnityに移りました。
辻:それはスゴイ(笑)
DSF2017では、我々組込みシステム開発者に対する何かしらのヒントとして、Unityの生産性の高さに繋がるゲーム・エンジンの考え方についてお話頂ければと考えています。どうぞよろしくお願い致します。