Comments
Description
Transcript
講演ファイルのダウンロード(PDF)
Unity on Windows ゲームと開発のエクスペリエンス 日本マイクロソフト株式会社 デベロッパー エバンジェリズム統括本部 テクニカル エバンジェリズム本部 エバンジェリスト 大西 彰 (@oniak3) COPYRIGHT 2014 @ UNITY TECHNOLOGIES ゲーム系担当 Unite 登壇 2 回目 CEDEC 登壇 3 回 http://www.microsoft.com/en-us/news/bythenumbers/index.html Jb & Sebastien at GDC 2015 Expo http://aka.ms/vstudocj Visual Studio Community, http://aka.ms/vstu2010 http://aka.ms/vstu2012 http://aka.ms/vstu2013 http://aka.ms/vstu2015 http://aka.ms/vscomm2013 Audio, Body, Face, Video, Speech, Gestures, Depth, Color, Skeleton tracking http://go.microsoft.com/fwlink/?LinkID=513177 http://aka.ms/k4wv2sdk http://www.microsoft.com/en-us/kinectforwindows/meetkinect/gallery.aspx Universal Windows Apps - Windows 8.1 - Windows Phone 8.1 http://aka.ms/8store Windows 8.1 プラットフォーム 18 Highest performance rendering Direct device access Complex 2D/3D graphics, text Image effects アプリの 開発 アプリ パッケージ の作成 アプリ パッケージ の登録 ストア での公開 Universal Windows Apps made with Unity http://aka.ms/unity4win Unity Windows コンテンツ ストアアプリ用 作成 にビルド アプリの仕上げ Windows 固有の機能の 実装 パッケージ Windows 作成 ストアへ申請 Compiler: Mono Run-time: Mono Unity Editor Compiler: Mono Run-time: .NET for WP Windows Phone 8 Compiler: .NET Run-time: .NET + WinRT Universal apps (WP 8.1, Win8 & 8.1 ) ここが問題 .NET CLR (Desktop) Mono .NET Core http://docs.unity3d.com/Manual/windowsstoremissingtypes.html https://github.com/MarkerMetro/MarkerMetro. Unity.WinLegacy https://github.com/msgpack/msgpack-cli UnityEngine.WSA.Application.TryInvokeOnUIThread(() => }, true); UnityEngine.WSA.Application.TryInvokeOnUIThread(() => { }, false); UnityPlayer.AppCallbacks.Instance.IsInitialized() UnityEngine.GameObject Free plugins Store Store Essentials Essentials Ads Ads Azure Azure (Soon) http://prime31.com/plugins Windows Desktop Windows Phone Windows 10 XBox IoT HoloLens Surface Hub ONE CORE OS ONE APP PLATFORM ONE STORE Free Windows 10 upgrade One Windows core for all devices Apps run across phone, tablet, PC, Xbox and more Single submission flow and dashboard Global reach, local monetization Consumers, Business and Education http://channel9.msdn.com/Events/GDC/GDC-2015 DirectX 12 • 新しい API モデル • GPU 性能を引き出し、 CPU 負荷を下げる • 同じハードウェアで パフォーマンスは 2倍以上 DirectX 12 • 新しい API モデル • GPU 性能を引き出し、 CPU 負荷を下げる • 同じハードウェアで パフォーマンスは 2倍以上 http://www.intel.co.jp/content/www/jp/ja/nuc/nuc-kit-nuc5i5ryh.html DirectX 12 - ExecuteIndirect • Replacement for DrawIndirect and DispatchIndirect Can perform multiple draws with a single API call Number of draws can be controlled by CPU or GPU Can even change bindings between draw calls • Works on all DirectX 12 hardware from Feature Level 11.0 and up • • • http://channel9.msdn.com/Events/GDC/GDC-2015/Advanced-DirectX12-Graphics-and-Performance Draw Loop versus ExecuteIndirect for (UINT drawIdx = drawStart; drawIdx < drawEnd; ++drawIdx) { // Set bindings cmdLst->SetGraphicsRootConstantBufferView(RT_CBV, constantsPointer); mCmdLst->SetGraphicsRootDescriptorTable(RT_SRV, mTextureStart); mCmdLst->ExecuteIndirect(mCommandSignature, settings.numAsteroids, frame->mIndirectArgBuffer->Heap(), 0, nullptr, 0); constantsPointer += sizeof(DrawConstantBuffer); auto textureSRV = textureStartSRV.MakeOffsetted( staticData->textureIndex, handleIncrementSize); cmdLst->SetGraphicsRootDescriptorTable(RT_SRV, textureSRV); cmdLst->DrawIndexedInstanced(dynamicData->indexCount, 1, dynamicData->indexStart, staticData->vertexStart, 0); } CPU 使用率が激減 http://channel9.msdn.com/Events/GDC/GDC-2015/Advanced-DirectX12-Graphics-and-Performance Unity 5 - D3D 12 optimization case study • Multi-threading shadow map rendering • Move work away from main thread • Generate d3d cmd lists for each of the shadow maps on their own worker threads • Cmd lists executed in parallel with the main scene cmd list building http://channel9.msdn.com/Events/GDC/GDC-2015/Advanced-DirectX12-Graphics-and-Performance Unity 5 – Before optimization on DirectX 12 http://channel9.msdn.com/Events/GDC/GDC-2015/Advanced-DirectX12-Graphics-and-Performance Unity 5 – After optimization on DirectX 12 http://channel9.msdn.com/Events/GDC/GDC-2015/Advanced-DirectX12-Graphics-and-Performance 開発者支援プログラム http://aka.ms/dcb http://www.wpdevcenteroffers.com/ ① Visual Studio や Windows Server を学生は 無料 で、 教育機関は 10,800円 から利用できる ② Windowsストア、Windows Phone 開発者登録が無料に ③ ダウンロードした製品は卒業後もずっと使える 起業家支援プログラム Microsoft BizSpark 3 年間、MSDN Ultimate を無償提供 Windows 8 開発者ライセンスも無償提供! Microsoft Azure も 563,500円分無償提供! 対象 ソフトウェア開発 設立5年未満、年商 1億円未満、非上場 申込み http://www.microsoft.com/bizspark/ Unity で作る Windows ストア アプリ: http://aka.ms/unity4win MSDN: http://msdn.microsoft.com/games-development-msdn Middleware Portal: http://services.windowsstore.com/ ID@Xbox: http://www.xbox.com/ja-jp/Developers/id Developer Portal: http://dev.windows.com/ BizSpark: http://www.microsoft.com/bizspark/ DreamSpark: https://www.dreamspark.com/ Microsoft Virtual Academy: http://www.microsoftvirtualacademy.com/ https://insider.windows.com/