Windows 10、DirectX 12、Kinect、PlayStation 4、VRヘッドセット対応、Unity 5への移行に見るUnityの可能性と課題Unite 2015 Tokyoリポート(2/3 ページ)

» 2015年05月11日 05時00分 公開
[高橋美津@IT]

VSTU、Kinect、Windows 10、DirectX 12、Unity開発者を支援するマイクロソフトの取り組み

日本マイクロソフト デベロッパーエバンジェリズム統括本部 テクニカルエバンジェリズム本部 エバンジェリスト 大西彰氏

 日本マイクロソフトは「Unity on Windows ゲームと開発のエクスペリエンス」と題し、デベロッパーエバンジェリズム統括本部 テクニカルエバンジェリズム本部エバンジェリストの大西彰氏が講演を行った。

 同社は近年、WindowsやOfficeといったプロダクト中心のイメージから、「プロダクティビティ(生産性)」と「プラットフォーム」を提供する企業への転換を急速に進めている。子会社であるMicrosoft Open Technologiesによる出資などを通じてオープンソースコミュニティとの協力関係を強めている他、クロスプラットフォームに関する技術を持った企業との協業にも従来以上に力を入れている。Unityの開発を行っているユニティ・テクノロジーズも、そうしたパートナーの一社である。

Visual Studio Tools for Unityで開発生産性が大幅に向上

 大西氏はまず、マイクロソフトの統合開発環境である「Visual Studio」の高い生産性を、Unityでの開発作業に生かすことができるプラグイン「Visual Studio Tools for Unity」(以下、VSTU)を紹介した。同プラグインは、以前「UnityVS」の名称で、SyntaxTreeというサードパーティが開発していたものだったが、マイクロソフトでは2015年4月に同社を買収。Visual Studioのオフィシャルなプラグインとして、機能強化とサポートを行っていく方針を示した。

 セッションでは、最新の「Unity 5」と「Visual Studio」をVSTU 1.99で連携させ、C#によるコーディングの支援機能や、Visual Studio側で設定したブレークポイントによって、Unity Player上で実行しているプログラムを止め、コードの該当部分を表示するデバッグ支援機能などをデモした。

「Unity 5」と「Visual Studio」のデモ

 「VSTUでできることそのものは、わりと地味ですが、実際に使ってみると開発生産性は大きく上がります。VSTUそのものは無料で提供されており、Visual StudioのProfessional版以上で利用できます。Professional版相当の機能を持ち、個人の開発者なら無償で使えるCommunity版でも動かせますので、ぜひ一度試してください」(大西氏)

Unity 5では、無料の「Personal」版でKinectに対応できる

 もう一つのトピックは「Kinect for Windows v2」だ。人間のさまざまな動作や音声の入力インターフェースとして利用できる「Kinect」は、ゲーム機であるXbox 360用の周辺機器として登場したが、現在ではゲームだけではなく、その他のエンターテインメントやヘルスケア、教育など、実用分野にも活用の場を広げている。

 最新版の「Kinect for Windows SDK 2.0」では、Windows、Windowsストア、Xbox向けの開発で共通に利用できるAPIが整備された他、Unityプラグインのサポートも行われた。Unity 5では、プラグインを含む機能を無料で利用できる「Personal」版が用意されたため、Kinect本体の料金を除けば、ほぼ追加投資なしでUnityで動作するKinectアプリの開発が可能な状況になっている。

 大西氏は、Kinect for Windows v2とUnityを組み合わせて作られたプログラムの例として、ヘルスケア企業である「Reflexion Health」によるフィジカルセラピーソフトウエアを実演した。また、実際にUnity 5にKinect SDKをインストールし、VSTUでコードを書き換えながら、認識した動作に対する処理を変更できる様子もデモした。

Unity 5とKinectのデモ

 「KinectとUnity、VSTUを組み合わせれば、サンプルコードを使って、すぐにKinectの機能を生かしたアプリの開発が可能です。今日、会場に来ているUnity開発者の方からも新しいKinectの活用事例が出てくることを期待しています」(大西氏)

UnityでユニバーサルWindowsアプリ

 後半は、Unityを使って「ユニバーサルWindowsアプリ」の開発を行う際のコツと注意点がテーマとなった。ユニバーサルWindowsアプリとは、同一のコードから、Windows PCだけではなく、WindowsタブレットやWindows Phone、Xbox Oneといった多様なWindowsデバイスで動作するアプリケーションを開発できる環境を指す。

 Unityでは、バージョン4.5.3から、この環境向けの開発に対応しているが、現時点ではUnityプロジェクトの全てをスムーズに変換できる状況にはなっていない。その原因の一つは「コンパイラーとランタイムの相違」にあるという。

 Unityの標準IDEであるUnity Editorでは、コンパイラーとランタイムの双方にMonoプロジェクトを利用している。Monoはもともと、オープンソースとして実装された.NET Frameworkのサブセットだが、現時点ではWindowsデバイス側にランタイムとして搭載されている.NET CoreにMonoとの微妙な差異があり、それが問題になる可能性があるという。この状況は、「Windows 10」の登場以降に徐々に改善されることが期待されるが、既存のUnityプロジェクトをWindowsプラットフォーム向けに展開するに当たっては、この差異を考慮した調整が必要になる。

コンパイラーとランタイムの違い(大西氏の講演資料(PDF)より引用)
.MonoとNET Coreの相違点(大西氏の講演資料(PDF)より引用)

 大西氏は、フレームワークの違いを吸収する際の参考情報としていくつかのツールを紹介した。詳細については、それぞれのURLを参考にしてほしい。

 また、Windows向けの調整に当たっては、「Unity C# ScriptからWinRT APIの呼び出し」「UnityからのWindowsアプリの呼び出し」「WindowsアプリからUnity Engineへのアクセス」などの機能を活用することで、さまざまな対応が可能になるとした。ここでは、UnityプロジェクトからWindowsストアアプリとしてビルドしたアプリケーション上に、Windows UIのフォームを実装し、その入力内容をUnity Playerで動作しているアプリに反映させるといったデモが行われた。

 マイクロソフトでは、Unity開発者が既存のUnityタイトルをWindowsプラットフォーム向けに展開する際の支援プログラムや、不定期な技術相談会である「Unity Porting lab」などを通じて、UnityタイトルのWindowsへの展開をサポートしているという。

Windows 10搭載DirectX 12の表現力

 セッションの最後には、今夏以降にリリースされると見られている「Windows 10」に関する情報も一部披露された。デスクトップ、タブレット、スマートフォン、Xbox One向けのプラットフォームが統一され、1つのソースから全てのデバイスに向けたアプリ開発がさらに容易になることに加え、ゲーム開発者にとっては、よりパフォーマンスが向上した「DirectX 12」の搭載が大きなトピックになるという。

Build 2015で披露されたスクウェア・エニックスによるDirectX 12のデモ「WITCH CHAPTER 0 [cry]」(「Day 2 Keynote Presentation | Build 2015 | Channel 9」より引用)

 特に、DirectX 12を機能レベル11.0以上に対応したハードウエアで実行している場合に利用できる「ExecuteIndirect」というAPIを用いると、より多くの処理をGPUに割り振ることにより、DirectXアプリケーションのパフォーマンスが大幅に向上するという。セッションでは、Intel NUCのIntel HD Graphicsを利用し、DirectX 11から12への切り替えによって、フレームレートが大幅に向上すること、さらには ExecuteIndirectによりCPU使用率が大幅に下げられる点などをデモで示した。加えて、Unity 5ではDirectX 12への最適化が行われており、複数のスレッドをより効率的に処理できるという。

Unity 5 - After optimization on DirectX 12(大西氏の講演資料(PDF)より引用)

 「Windowsユニバーサルアプリへの展開を行うことで、手持ちのUnityタイトルをグローバルに向けてリリースすることが容易になります。マイクロソフトでは、VSTUの提供に加え、複数の支援プログラムを通じて、Unity開発者がWindowsプラットフォーム向けに作品をリリースしやすい環境を用意していますので、ぜひ利用してください」(大西氏)

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。