Developer

My Microsoft HoloLens Adventure – Updates on Studying

A couple of weeks ago, I made a post on the study materials I planned on leveraging to learn how to program for the Microsoft HoloLens. This weekend was the first time I finally started digging into studying. I quickly identified that the videos I intended to use might have been a bit off on exactly what I wanted to learn.

To be open and honest with everyone with my adventure, I wanted to share this and point you towards the resources I’ve decided to leverage instead. As I had mentioned in the last post, My Microsoft HoloLens Adventure – Preparing Study Resources. I had looked over some Basics videos back in March when I first started looking into this. I hadn’t touched those since March as I was getting kind of bored with it and it was all I had done when I was in college.

The next section in that post was Universal Apps, which I had never worked with. I started watching the Developing Universal Windows Apps with C# and XAML video. I quickly realized that it was going to be too high-level for me since I had such a limited experience. I tried searching for the videos they mention at the beginning of that course but was unable to find them on MVA. However, I was able to find Windows 10 Development for Absolute Beginners. In the first 10 minutes, I was able to figure out how to get my first 2D Application running for HoloLens. Yes, all it was is a button that shows text that says Hello World, but it was an app!

My Microsoft HoloLens Adventure – First Impressions of the HoloLens

it’s been over two weeks since my last post; however I have an excuse! It may not be a good excuse, however I went on a vacation to beautiful Las Vegas and shockingly decided I didn’t want to do anything computer related while out there (who would have thought?) Also before you ask – no I didn’t take the HoloLens to Vegas with me – in retrospect I think I could have made some decent money if I had and let people take pictures with it, everyone dressed like Mickey Mouse and Minions on the strip seem to make a good of enough of a living!

Matt in Las Vegas riding the High Rider
On the High Roller in Las Vegas

Anyway, I have now been back to reality for about a week and it is time to get my butt back in gear! So let’s talk the well over-due first impressions I need to share regarding the Microsoft HoloLens.

Disclaimer: Before we dive into my first impressions I do want to call out that this device is designed as a developer build – this is by no means a final release of the system or designed for consumer use I will reference this throughout my comments because I am not being as critical as some may have been on this device.

My Microsoft HoloLens Adventure – Preparing Study Resources

As I continue my adventure of learning how to program for the HoloLens, the first step is actually learning how to program! I am lucky enough that I took some programming classes while in College and I’ve done a lot of Scripting in Windows PowerShell – this helps me understand programming constructs. I just need to become more well-practices in the area of Object Oriented Programming and understanding the C# Syntax.

visual-studio-2013-logo

Basics:

To do this I actually started digging in a bit back in March covering some of the basics to refresh my memory. One of my favorite resources is the Microsoft Virtual Academy. I haven’t watched much but the first video I started watching was Bob Tabor’s C# Fundamentals for Absolute Beginners. As the subject says this is for absolute beginners so I’ve done a bit of skimming on a lot of the videos, but it gives a good introduction if you haven’t programmed before. I most likely will continue to skim these videos occasionally just to keep my mind fresh since I haven’t written a full blow application before.

Universal Apps:

The next video series I intend to watch is the Developing Universal Windows Apps with C# and XAML. The reason I am wanting to check with video out is my applications I want to have work across all Windows Platforms – this is something I’ve never done so it’ll be a challenge to pick it up. The nice thing about using this as a stepping stone is Universal Apps will not only work on HoloLens but also Windows 8+ Windows PC’s and Windows Phones.

HoloLens Apps:

When developing for the HoloLens there are two different types of app models, let’s explore each one.

2D Apps:

2D HoloLens apps will be the easiest ones to build – at least I think it will be for me. These apps are just like any other Windows Universal App, except the HoloLens will project the 2D App on a wall, or in front of you while using the HoloLens.

To make 2D Apps on the HoloLens I am intending to heavily rely on the Developing Uniersal Windows Apps with C# and XAML that is referenced under Universal Apps section.

In addition to the video the Microsoft Dev Center also has a couple of pages on building 2D Apps.

Building 2D apps
Current limitations for apps using APIs from the shell

Holographic Apps:

Holographic Apps are a very new concept – this is what makes the HoloLens a truly magical experience. You will see 3D renderings throughout your house, office, or where ever you are using the HoloLens at.

To start developing for HoloLens you must understand the different ways to interact with the HoloLens. This includes

World coordinates
Gaze input
Gesture input
Voice input
Spatial sound
Spatial mapping

To get a better understanding of the ways you interact with the HoloLens I suggest taking a look at the Development Overview video from Microsoft.

As I continue my adventure with learning how to develop for HoloLens I’ll make sure I share more information as I find it.

My Microsoft HoloLens Adventure – Setting up the Development Tools

I’ve started my adventure of learning how to program for the Microsoft HoloLens. If you haven’t heard about this new adventure please check out my blog post My Microsoft HoloLens Adventure – Introduction. On that blog post I have a video introducing myself, and my intentions. In addition I’ve included a video of the unboxing of the Microsoft HoloLens. Throughout this blog post I will highlight the steps required to get your PC setup to program the HoloLens.

Matt wearing the Hololens

System Requirements:

  • Windows 7 SP 1 or greater (Windows 10 recommended) – Must be Professional, Enterprise or Education edition
  • Hyper-V enabled on the system
  • 64-bit CPU with at least 4 cores
  • 8 GB of RAM
  • BIOS that supports:
    • Hardware-assisted virtualization
    • Second Level Address Translation (SLAT)
    • Hardware-based Data Execution Prevention (DEP)
  • GPU that supports:
    • DirectX 11.0 or later
    • WDDM 1.2 driver or later

Enable Hyper-V:

  1. Open Control Panel
  2. Click Programs
  3. Click Turn Windows features on or off
  4. Check Hyper-V
  5. Click OK
  6. Restart computer when install finishes

Installing Visual Studio 2015:

To write applications for the HoloLens you must use Visual Studio 2015 with Update 2 installed to write the Universal Windows App. Luckily you can use the Visual Studio 2015 Community edition at no cost! The community edition will provide enough features for you to get started, however if you are an experienced developer and want to dig into more depth you may want to evaluate the Professional or Enterprise editions. To compare what each edition has check out the Compare Visual Studio 2015 Offerings page.

Procedure:

  1. Download Visual Studio Community Edition
  2. Run the Installer
  3. Choose custom install
  4. Select Tools and Windows 10 SDK
  5. Click Install

HoloLens Emulator:

To develop for the HoloLens doesn’t require that you have a HoloLens – although it does make it more entertaining! If you do not own one do not fear – you can download and install the HoloLens Emulator.

Procedure:

  1. Download the HoloLens Emulator
  2. Run the Installer
  3. Click Next
  4. Click Next
  5. Read and review the License Agreement
  6. Click Accept
  7. Click Install

Unity HoloLens Technical Preview Beta:

To build holographic applications you need to use the Unity HoloLens Technical Preview – this gives you the ability to place 3D Models into your applications to be treated as Holograms.

Procedure:

  1. Download the 32-bit or 64-Bit client based on your needs.
  2. Run the Installer
  3. Click Next >
  4. Read and review the License Agreement
  5. Click I Agree
  6. Click Next >
  7. Click Install
  8. Click Finish
  9. Download the UWP Runtime
  10. Run the Installer
  11. Click Next >
  12. Read and review the License Agreement
  13. Click I Agree
  14. Click Install
  15. (Optional) Download the offline documentation
  16. Run the Installer
  17. Click Next >
  18. Read and review the License Agreement
  19. Click I Agree
  20. Click Install
  21. Click Finish

My Microsoft HoloLens Adventure – Introduction

I’m back!!! It’s been almost a year to the day! I previously had claimed I was going to become much more active in my blogging and that turned out to be a lie. I had just started a new job and was expecting to have more ‘free’ time – that was laughable in retrospect. It’s been one of the busiest years in my life, and not really looking like it’ll slow down at all.

However I am pushing myself to do more! When the HoloLens developer application opened sometime back in 2015 – my gut wants to say early 2015 but I can’t say for certain I applied to be a developer, I thought for kicks it might be fun. I filled out the application 100% honestly and figured I’d never be accepted.

MSHoloLens_Image_1_CMYK

On February 29th of 2016 I received an email that I was accepted into wave 1 – I was shocked, thrilled and thought there is no way I can justify the cost. I spent weeks contemplating if I would drop the money and if I did what would I even program on it?

After about 1-2 weeks of pondering a couple of ideas for applications I decided I could justify the expense, then weeks – heck months passed before I actually got the purchase link from Microsoft. I spent a few more hours considering it and decided to take the plunge. I received the purchase link email from Microsoft on Monday May 9th at 9:33 AM – I read it around 6:00 PM. I made my purchase at 7:32 PM. I received an email that the HoloLens shipped from Shanghai China Tuesday at 11:17 PM. From looking at the tracking history the HoloLens went from Shanghai to my door step within 26 hours.

I still had a full work day to knock out so I didn’t get to actually open the HoloLens for another ~9 hours. While doing the opening I made an unboxing video which can be seen below. I do apologize for the echo but I didn’t have a good quality mic available.