Future Decoded 2017 Resources

NB: The usual blog disclaimer for this site applies to posts around HoloLens. I am not on the HoloLens team. I have no details on HoloLens other than what is on the public web and so what I post here is just from my own experience experimenting with pieces that are publicly available and you should always check out the official developer site for the product documentation.

At this year’s Future Decoded show, I presented a couple of sessions with my colleague Pete around Windows Mixed Reality.

  • Windows Mixed Reality – Bootstrapping Your Development
  • Windows Mixed Reality – Developing with Unity

Neither of these were ‘official’ in the sense that Pete and I don’t work on the HoloLens or Mixed Reality teams at Microsoft and we aren’t even on the same continent and so you should always go check the official developer site;

for everything ‘official’ and always refer back to that in case of any doubt.

With the first of these sessions our intention was to provide a list of topics/resources that we’d want to know about if we were starting in Mixed Reality development today. We’ve since screen-captured that session and you can find the video of it below. Apologies on the audio, it’s a little “flat” which comes from recording straight into a PC with a cheap microphone.

In terms of the slides that we made/used for that session – they are downloadable in PDF form from here.

The intention of the second session was to make some of what we’d shown in the first session “come to life” by putting together some rough pieces in Unity with the Mixed Reality Toolkit (MRTK) and the Mixed Reality Design Labs (MRDL) and we’ve screen-captured that session also and it’s available below;

The sharp-eyed amongst you might notice that the video jumps between 1620 and 1920 vertical resolution, apologies for that – we’re aware of it.

As you’ll hear in the session, we worked from a slightly strange starting point because the MRTK and the MRDL were in the process of ‘coming together’ at the time that we made the session.

Since the session, that work has progressed and so we would start from a different place today than we did when we put the session together. See this pull request for the gory/glory details Smile and expect that there is more work to be done to bring some more of the MRDL goodness (e.g. bounding box) into the MRTK.

All mistakes are ours – feel free to let us know about them Smile

Hitchhiking the HoloToolkit-Unity, Leg 6– A Collection of Demos from A Recent Meetup Talk

NB: The usual blog disclaimer for this site applies to posts around HoloLens. I am not on the HoloLens team. I have no details on HoloLens other than what is on the public web and so what I post here is just from my own experience experimenting with pieces that are publicly available and you should always check out the official developer site for the product documentation.

I gave a developer session at a meetup the other week which was a bit of a ‘lap around’ getting started with HoloLens development which covered a few areas including;

  • A 2D ‘Hello World’ app and how to deploy, run and debug it on both the HoloLens emulator and HoloLens.
  • How to get hold of the HoloToolkit for Unity.
  • A 3D ‘Hello World’ app in Unity.
  • Adding support for Gaze.
  • Adding support for Gesture.
  • Adding support for Voice.
  • Adding Spatial Mapping.
  • Adding Spatial Sound.

All of this covers ground very similar to that found in the Holographic Academy and I’d strongly encourage anyone who’s even looking at HoloLens to walk through that Academy online as it’s a really useful way to get a quick-start on a number of topics and, with the emulator, you don’t need to have a device to work through it.

At my session, I used a number of recorded ‘coding’ videos which I added a voice-over to “live” on the day but I was asked whether I might share them here with a voice-over added and so that’s the purpose of this post.

The videos follow in order in that that, generally, a later video might make use of something that happened in an earlier video.

In the live session, I have things to say both before, during and after these demos but for this post I’ll just make some text notes which hopefully will be enough string the videos together.

Two other notes about these videos;

  • They have been recorded from the screen and so they suffer a little in quality.
  • They are inevitably going to get out of date with respect to the HoloToolkit and I don’t intend to update them which is another reason to always refer back to the official tutorials 

With those caveats in place…

Session Demos In Order

Building a Quick 2D UWP App and Deploying to PC, HoloLens Emulator and HoloLens

In this first demo, we put together a UWP application from scratch and then see how it runs on PC and HoloLens and how we can deploy to HoloLens from Visual Studio either over USB or over WiFi;

Getting Hold of the HoloToolkit

We are going to use the HoloToolkit for Unity in our 3D demos so this very short screen capture just shows how I got hold of it;

A 3D Hello World in Unity

Having got the HoloToolkit for Unity, we can now bring it into a blank project, set up our project and scene settings and make a basic app that we can deploy to the HoloLens to try out;

The Device is the Camera

I thought it was important to try and explain that the world co-ordinate system is presented with the device/user at the centre of it and that the user/device effectively act as the camera here;

Adding Gaze

Knowing where the user is looking and what they are looking at is really important for an app on HoloLens and so we add the basics of detecting the user’s gaze;

and then we can make this easier by adding in pieces from the HoloToolkit;

and we can also add a cursor to give the user visual feedback again using pieces from the HoloToolkit;

Adding Gesture

Time for the user to interact with the holograms and here we use the basic framework pieces to add support for a click (air-tap) gesture;

and once again we then revisit that to use the HoloToolkit to make it easier and better for us;

Adding Voice

Voice is a hugely important part of interacting with these applications and so we add support for our application to listen to voice commands via the HoloToolkit;

and then we add basic support for having our application speak back to us, again leaning on the HoloToolkit to get it done;

Adding Spatial Mapping

At the moment, our objects are simply falling through the physical world so it’s time to add some spatial mapping support such that the physical environment mixes with the virtual one. For this demo, we simply use the prefab object from the HoloToolkit to add in spatial mapping and to visualise it;

Adding Spatial Sound

Last but not least, sound is critical in an environment where you might want to attract the user’s attention to holograms which might be behind them or off to the left or right and so we set up our four cubes as sound sources and see if we can apply spatial sound to them. Note that here I’m just using a basic WAV file so I’m not sure it’s going to give stunning results and especially not when recorded this way.

and that’s it in terms of the demos that I used in this particular session – hope this is helpful to the people who came along and perhaps a few more folks as well Smile

Windows 10, UWP at UK Future Decoded in November

At this year’s Future Decoded event in a couple of weeks I will be speaking with the half-man-half-sofware-legend that is Andy Wigley on the topics of developing for Windows 10 and the UWP in the Anniversary Edition (1607) of Windows.

We’ll be looking at lots of areas that are new/changed in Anniversary Edition over and above what was present in earlier versions. This adds up to 3 afternoon breakout sessions making for 3 hours of UWP and Windows 10 development at Future Decoded.

We’d love to see you there, click the banner below to register (it’s free);

image

We look forward to seeing people there on the day and I’ve pasted the abstract descriptions for the sessions below;

image image image