Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Etna dev 2016 - Introduction to Holographic Development


Published on

Introduction to Holographic Development

Matteo Valoriani
Clemente Giorio
Marco Dal Pino

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

Etna dev 2016 - Introduction to Holographic Development

  1. 1. Introduction to Holographic Development Clemente Giorio Matteo Valoriani Marco Dal Pino
  2. 2. Agenda How develop HoloGraphic App Setup and SDK My first App HoloToolKit Unity Input: Gaze / Tap / Voice Spatial Mapping Performances Q&A?
  3. 3. How develop HoloGraphic App
  4. 4. Different Devices
  5. 5. Checklist 5.4.0f3-HTP Build 10.0.14393.0
  6. 6. Unity 3D Cross Platform HoloLens Support WYSIWYG Editor Quick Interaction Times Powerful Asset Pipeline Easy to lean API’s Programming Language: C# Wrapper and dlls support: C++
  7. 7. Web Portal / Microsoft HoloLens App
  8. 8. Demo My first App
  9. 9. HoloLens Toolkit-Unity Unity/blob/master/ Input Sharing Spatial Mapping Spatial Sound Utilities Build
  10. 10. Demo Input: Gaze / Tap / Voice
  11. 11. Spatial Mapping
  12. 12. Demo Spatial Mapping - Planetarium
  13. 13. Shaders Programs that run on the GPU Written in C like language (CG, HLSL, GLSL) Used for lighting, effects, computation, etc DX11 Rendering Pipeline
  14. 14. Structure of a Shader Shader “Name”{} Properties {} SubShader {} Pass {} CDPROGRAMM … ENDCG Defining Variables Structs Vertex Program
  15. 15. Black.shader & Color.shader Shader “DTC-HoloLens/Black”{ SubShader { Pass {} } } Shader “DTC-HoloLens/Color”{ Properties { _Color (“Color”, Color) = (1,0,0) } SubShader { Color [_Color] Pass {} } }
  16. 16. Shadertoy
  17. 17. Performances Profiler
  18. 18. Fild Of View
  19. 19. Remember HW Limits Goals • Frame Rate 60 fps • Memory < 900 MB Total Commit The the biggest factors for CPU performance are: • Too many objects being rendered (try to keep this under 100 unique Renderers or UI elements) • Expensive updates or too many object updates • Hitches due to garbage collection • Expensive graphics settings and shaders (shadows, reflection probes, etc.)
  20. 20. Optimize Player Go to the player settings by navigating to "Edit > Project Settings > Player" page, click on the "Windows Store“ Use Shader preloading, preloading means you won't see any hitches due to runtime shader compilation. Make sure "Rendering > Rendering Path" is set to Forward (this is the default). The "Use 16-bit Depth Buffers" setting allows you to enable 16-bit depth buffers, which drastically reduces the bandwidth (and thus power) associated with depth buffer traffic.
  21. 21. Introduction to Mixed Reality with HoloLens Clemente Giorio Matteo Valoriani Marco Dal Pino
  22. 22. @HoloLensDevelop HoloLens Developers Group Hololens Developers 10601469 HoloLens Developers