layout: true --- class: center # Introduction to Mixed Reality Development ![Hololens](Screenshots/hololens.png#large) --- class: center middle # Who are we? --- # Agenda 1. Quick introduction 2. Setting up the MixedReality project 3. Introduction to Unity 4. Mixed Reality Toolkit Features 5. Deployment and testing 6. Use cases and overview of devices 7. Test devices (HoloLens 1, Bose AR, Lenovo Explorer) 8. Further development by using the MRTK 9. Quick introduction to WebVR (If we have time) --- class: split-40 # Software requirements .column-left[ ![All the things](Screenshots/allthethings.jpg#medium) ] .column-right[ - Visual Studio 2017 (Windows 10 SDK) - Unity 2018.3.x - HoloLens emulator - Mixed Reality Toolkit ] .block[ Find it here: [https://github.com/grynag/MixedRealityDevelopment](https://github.com/grynag/MixedRealityDevelopment) ] --- class: center #Immersive computing ![Immersive](Screenshots/immersive.jpg#xlarge) .footnote[ Google ] ??? Om man har den virkelige verden på den eine sida og eit heilt virtuelt miljø på den andre sia, vil VR, eller virtual reality, være det heilt virtuelle miljøet, mens ar, augmented reality vil befinne seg midt mellom VR og den virkelige verden. I AR legge man til virtuelle obekt i den virkelige verden. --- class: center # What is Mixed Reality? ![MRARVR](Screenshots/mararvr.jpg#xlarge) .footnote[ Oculus materials used with permission. © 2016 Oculus VR, LLC. All Rights Reserved, Microsoft, IMore ] ??? I tillegg har vi Mixed Reality. De e et begrep innført av Microsoft og havna en plass midt mellom VR og AR. Målet med mixed reality at i tillegg til å legge til objekt i den virkelige verden er målet at objekta skal prøve å passe inn i den virkelige verden. En ting som e vært å merke seg e at Microsoft bruka begrepet Mixed Reality om både AR og VR. Så kort oppsummert så vil VR erstatte den ekte verden med en virtuell verden, AR legge til digitale objekt i den virkelige verden og Mixed reality integrera virtuelle objekt i den virkelige verden og får det til å sjå ut som at dei faktisk e der. --- class: center # Mixed Reality Devices ![Hololenses](Screenshots/hololenses.jpg#xlarge) --- class: center # Mixed Reality Devices ![Hololenses](Screenshots/vrandar.jpg#xlarge) --- # What is the Mixed Reality Tookit? - Collection of scripts and components - Makes the start up easier - Version 2 released in April ??? Litt om den forrige toolkiten, litt om den nye For bruk i Unity foreløbig, skal komme support for Unreal engine Unity --- class: split-60 # MRTK High-Level architecture .column-left[ ![All the things](Screenshots/architecture.jpg#fill-it) ] .column-right[ - «Out of the box» - Testing - Programmatic interface - Documentation - Standardized examples - Cross-platform ] ??? Device Abstraction Layer Bridge between external SDK’s and the MRTK to conform output/input. Work for different devices. MRTK Constructs Defines interactions with multiple VR/AR platforms. MRTK Interface Layer A bridge to coordinate inputs coming from VR devices and controllers. MRTK User Abstraction layer The SDK front end. Includes pre-build components. Easy to use components/scripts. “Out of the box” Everything should have tests Programamatic inferface Documentation Standarlized examples The new framework needs to provide “out of the box” components to enable rapid prototyping and development. Future internal changes should not break these components or cause them to degrade in functionality. Every component / feature provided by the framework (either prefab or script) should have corresponding unit tests to validate its functionality. Any future merge to the framework will have to validate these test before merging to ensure there is no degradation of service. The new framework should provide a programmatic interface along side the SDK components, to enable advanced users to extend or replace any component within the framework. Each new interface / component should be fully documented (where possible). These should detail all interactions and intended uses. For the advanced cases, we’ll need to review how we explain how to replace components (e.g. replacing the input system with another, like InControl) Working examples / demos should be created for any specific system, these should have purpose and not just be a “test”. All testing components / scripts / prefabs / scenes should only be retained in the dev branch. The master branch should only contain the “ToolKit” and working examples. Master is for consumers only. Simulator options need to be provided as another device. This will also form the template for new MR/XR/VR devices / SDKs. --- class: center #Mixed Reality Toolkit Roadmap ![Roadmap](Screenshots/roadmap.jpg#xlarge) ??? MRTK V2 RC ble releaset i april --- class: center #Mixed Reality Device Features ![Features](Screenshots/features.jpg#xlarge) ??? --- class: center middle # Setting up a Unity project ## Is everything downloaded?