Two months ago I got an opportunity to be the co-trainer for Microsoft HoloLens Workshop in BEKRAF GamePrime 2016 Jakarta. It was an annual national game developer conference where game developers and top game industry practitioners around the country gather to showcase their product and to discuss the upcoming industry trends. I went with Christian Saragih and Yugie Nugraha, whom both were my ex-colleague from Microsoft Student Partner. It was Microsoft Developer Evangelism plan to showcase HoloLens product and its potential to game developers. I was very excited for the occasion because I've been waiting for the opportunity to have my hands-on the device.
I watched the Windows 10 event back in January 2016 when the HoloLens was first unveiled. I remember there was a cameraman who walks around the stage to film what the HoloLens users see and presented it on the screen. It was very cool. I was so excited and curious about the device at the same time, and asked myself "Did the HoloLens users actually see the virtual objects as clearly as what presented on the screen?"
Several days before the event, I was invited to Microsoft Indonesia Office in Jakarta to have a technical briefing for the event. It was also the first time I finally been able to personally experience HoloLens. Some of you maybe have seen some Microsoft demo videos of how people do incredible things with it. Let me tell you it's not all you would imagine in the videos, but it's still very impressive.
For the first 30 minutes I used it, I've tried so many things with the device to confirm what I saw. I placed some 3D figures around, opened several applications and then putting it on the walls, personalized my space, played a YouTube videos, and much more. I was so focused and excited, until the point when the device got lagged because I probably opened too much stuff at the same time (lol). It was an amazing experience.
Though it's not perfect yet, I'd still personally think there is still much room for improvement for this device. One of the major limitation of the device for me personally is the small viewing area. All the holograms and digital environment are only visible through a relatively small rectangular area. So if you get close enough to a digital object, you can't see it entirely. I've heard this issue before, and it's one of the common complaints among HoloLens reviewer, but it was a good start. I hope they will solve this problem later as hardware capabilities get more powerful and cheaper.
I've tried OculusRift, HTC VIVE, and other AR/VR gear before, this thing is entirely different and defines a new category. It can have a whole range of implementation starting from video games industry, education, design, architecture, and many others.
HoloLens Workshop - BEKRAF GamePrime 2016 Jakarta
We were doing the workshop in private sessions. We invited 12 game companies to participate with 2-6 members each. Every team has one-hour session.
For warming up, we gave each person an opportunity to experience HoloLens in personal. Letting them know the basics such as gestures controls, gaze control, voice commands. We were also showing them games developed with HoloLens SDK such as RoboRaid, to give them the idea of how fun it is to play video games in HoloLens.
After that, we did a technical session where we teach them how to develop, build, and deploy a holographic app to HoloLens using Unity and Visual Studio. We used a sample app called "Origami" from The HoloLens Academy. The app is very simple; you set up a 3D environment in Unity by putting some virtual objects and meshes, and then configure the camera position in Unity to follow the HoloLens user. It's easy yet already covers many of the HoloLens features such as gaze, voice, and spatial mapping.
The responses from the participant were mostly positive. Most of them were excited when seeing the spatial mapping in action, scanning the real-world environment in 3D, and then applying it to the app. So when a virtual object is falling, it will bounce away when it hits the floor.
Below are the learning resources I used for the HoloLens Workshop. You can learn how to develop Windows Holographic App even without owning the HoloLens device by using HoloLens Emulator. In fact, deploying and running the app on the emulator is faster than on the actual device.
Tools & Software
There is no separate SDK for HoloLens; holographic app development uses Visual Studio 2015 Update 3 with the Windows 10 SDK (version 1511 or later). Here are the tools you need to start:
- 64-bit Windows 10 Pro, Enterprise, or Education (The Home edition does not support Hyper-V or the HoloLens emulator)
- 64-bit CPU
- CPU with 4 cores (or multiple CPU's with a total of 4 cores)
- 8 GB of RAM or more
- In the BIOS, the following features must be supported and enabled:
- Hardware-assisted virtualization
- Second Level Address Translation (SLAT)
- Hardware-based Data Execution Prevention (DEP)
- GPU (The emulator might work with an unsupported GPU, but will be significantly slower)
- DirectX 11.0 or later
- WDDM 1.2 driver or later
Click this link for more information about the tools and software.
You can explore Holographic Academy or start with "Holograms 101" tutorial where will build an Origami app. This tutorial consists of 7 chapters: