61
COPYRIGHT 2014 @ UNITY TECHNOLOGIES CREATING A VIRTUAL REALITY IN UNITY Kelvin Lo, Product Evangelist at Unity Technologies

Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

  • Upload
    -

  • View
    261

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

CREATING A VIRTUAL REALITY IN UNITY

Kelvin Lo, Product Evangelist at Unity Technologies

Page 2: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

UNITY 5.1+ VR

Page 3: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

UNITY

Oculus Rift

MS Hololens

Gear VR

Playstation VR

Unity

SDK, Runtime Dirver

SDK

Page 4: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

WINDOWS MAC OCULUS VR

Page 5: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 6: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

Page 7: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 8: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

GEAR VR• Android SDK • (osig) • https://developer.oculus.com/osig/ • Project/Assets/Plugins/Android/assets/

Page 9: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

UNITYMobile VR

PC

Mobile VR Google Cardboard

SDK Oculus Mobile SDK Mobile VR

VR

SDK Unity (

HTC Vive )

Page 10: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

Insert Image

icon in the middle placeholder

2. Insert the desired picture 3. Click Crop to change focus of the image / size

Page 11: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

BUILD SETTINGSBUILD

• Texture compression •

• ETC2 (GLES 3.0) • Orientation •

• Landscape left (mobile) • V-Sync

• Do Not Sync • Enable Multi-threading • 4.5+

• Fixed Time step

• 0.01666 ( 60 fps)

• 0.01333 (PC 75 or 90 fps)

• Anti-Aliasing •

• 2x max

Page 12: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

• Runtime不能降FPS • 使⽤LOD,遮擋剔除,批次運算 • 減少物體數量,減少物體曲⾯ • 多⽤靜態物體,採⽤烘焙光照 • 使Draw Call保持100左右 • ⼩於100k的三⾓⾯ • 可以採⽤⾼解析的紋理來彌補 • 使⽤物理引擎來避免CPU消耗過⼤

MOBILE PERFORMANCE

Page 13: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

VR JAM 1. 2. 3. 4. ASSET STORE

Page 14: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

HOW HUMANS WORK

Page 15: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

FOVEATED RENDERING

Page 16: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

FOVEATED RENDERING•

Page 17: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

Insert Image

icon in the middle placeholder

2. Insert the desired picture 3. Click Crop to change focus of the image / size

Page 18: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMAN HEARING

Page 19: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMANS GET SICK

Page 20: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

VR 1.FPS > 75 2. < 20MS

Page 21: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMAN VISIONField Of View (FOV) of 210º horizontally by 160º vertically (with neck movement), * 135 pixels per angle = 5.76E

Page 22: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

DESIGNING FOR HUMANS

Page 23: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMANS LIKE REALITY…才怪

Page 24: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMANS LIKE REALITY

Page 25: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMANS GET SCARED

• VR

Page 26: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMANS GET TIRED

• 2 5

• VR 5 30

Page 27: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

HUMANS CAN EMPATHIZE

• VR

Page 28: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

DESIGNING FOR VIRTUAL INTERACTIONS

Page 29: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

• UI

Page 30: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

• •

Page 31: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

• You really want to read this…

Page 32: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

UNITY VR ROADMAP UNITY VR

Page 33: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

Camera Camera

Camera

API

Culling x 2, Shadow Draw x 2, Drawcall x 2, Render State x 2

GRAPHICS PIPELINE

Set Textures Set Transforms Set Geometry State Draw

Set Textures Set Transforms Set Geometry State Draw

Set Textures Set Transforms Set Geometry State Draw

Set Textures Set Transforms Set Geometry State Draw

Update View to Other Eye

Page 34: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

Camera Camera

Object

Camera Viewport Transform

Drawcall x 2

GRAPHICS PIPELINE

Set Textures Set Transforms Set Geometry State Draw Set View State Draw

Set Textures Set Transforms Set Geometry State Draw Set View State Draw

Set Textures Set Transforms Set Geometry State Draw Set View State Draw

Page 35: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

之後的圖形流⽔線-其他⽅案

渲染場景時,只檢查⼀次場景,每個Object送出⼀次,建⽴兩個Command

List來分別渲染(需要硬體⽀援,Ex: DX11) 渲染場景時,只檢查⼀次場景,使⽤Instancing技術來double所渲染的物體(不⽀援OpenGL ES 2.0)

⽀持多GPU

GRAPHICS PIPELINE

Page 36: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

Page 37: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

Page 38: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

VR

Page 39: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

VR AR

2015

Page 40: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

VR

Virtual Boy 1995 Oculus Rift 2012Google Cardboard 2014

Page 41: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

截⽌2017年,累計的VR 設備總數會達到1320萬台

預計到2020會有2600萬台相關設備

在2020年VR 設備累計總數會達到6600萬

99%的復合增⻑率

2020年HMD市場價值為30億美元

Page 42: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 43: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

VR - 720 VR

Page 44: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

A VR DEMO MADE BY MAKOTO ITO

Page 45: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

Insert Image

icon in the middle placeholder

2. Insert the desired picture 3. Click Crop to change focus of the image / size

Page 46: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

Insert Image

icon in the middle placeholder

2. Insert the desired picture 3. Click Crop to change focus of the image / size

Page 47: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

Insert Image

icon in the middle placeholder

2. Insert the desired picture 3. Click Crop to change focus of the image / size

Page 48: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo
Page 49: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

+

COMBINE 6 GO-PRO CAMERAS WITH A QUADROTOR

Page 50: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

Or… buy a Panorama Camera

Page 51: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

HOW IT WORKS?

Page 52: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

CREATING A AUGMENTED REALITY IN UNITY

Kelvin Lo, Unity Technologies

Page 53: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

AR DEMO

Page 54: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

PROJECT DEMO 1.Vuforia 5 SDK for Unity 2.Target Dataset Unity 3.

Page 55: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 56: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 57: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 58: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 59: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIESCOPYRIGHT 2014 @ UNITY TECHNOLOGIES

Page 60: Creating a Virtual Reality in Unity - by Unity Evangelist Kelvin Lo

COPYRIGHT 2014 @ UNITY TECHNOLOGIES

Text Styles

between levels

Level 1 = Bullet 24 pt. Level 2 = Bullet 24 pt. Level 3 = Bullet 20 pt. Level 4 = Bullet 18 pt. Level 5 = Bullet 16 pt.

again, use SHIFT + TAB

Alternatively,

• https://bitbucket.org/Unity-Technologies/2ddemos