講演ファイルのダウンロード(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/