Hello everyone.

The Mixed Reality Forums here are no longer being used or maintained.

There are a few other places we would like to direct you to for support, both from Microsoft and from the community.

The first way we want to connect with you is our mixed reality developer program, which you can sign up for at https://aka.ms/IWantMR.

For technical questions, please use Stack Overflow, and tag your questions using either hololens or windows-mixed-reality.

If you want to join in discussions, please do so in the HoloDevelopers Slack, which you can join by going to https://aka.ms/holodevelopers, or in our Microsoft Tech Communities forums at https://techcommunity.microsoft.com/t5/mixed-reality/ct-p/MicrosoftMixedReality.

And always feel free to hit us up on Twitter @MxdRealityDev.

Overwhelmed.... Advice needed

OK, so I have had my HoloLens for about 2 weeks now, and I am a bit overwhelmed on how to really get started with development.

I have 20+ years in development, ranging from client apps, to web apps, to mobile apps, mostly in Microsoft technologies. Large scale, small scale and everything in between. I have a lot of experience with 3d CAD, mostly in Solidworks, a little in Blender.

I have gone through the first few tutorials on the Academy, and get everything working fine. I go through the code, and I see what its doing. BUT, I am kind of lost on all of this stuff. In the tutorials, you are starting with holograms, lighting, cursors, etc. that is provided to you. You walk through the tutorials, and personally I am not sure why I am doing half of the stuff I am doing.

I think where I am really overwhelmed is Unity. I tried going through the Roll a ball Unity tutorial, using HoloLens, and it does not seem to work. I suspect its because the inputs are very different, and I need to use the HoloLens as inputs.

I could really use some advise on how to really get into this stuff. I would love to be able to create my own holograms, and automate them, control them, manipulate them, etc. Just having a really hard time getting started.

Comments

  • I'm in the same boat. In fact I'll be giving a talk on this problem coming up I'm the fall. There are so many skill sets you need to pull together.

    Unity alone is years of hands on knowledge.

    I've been documenting my journey as I go.

    I take small nightly tasks and try to complete them while working towards a larger goal.

    For example night 1 was how do I get my stupid 3D model in front of me. Adding it to the demo. I find if get stuck I need to walk away. I'm a ux designer of 18 years. I'm no stranger to learning new methods.

    I ve done app design and game design, but really no C sharp. So add that to learning unity!

    We are really working with next level mediums so I expect there to be a pretty steep learning curve. As a first step I try to find someone to learn together with. ( I haven't found anyone locally yet).

    I read on the boards here every night to shove more info into my head. I'm about to go back to tutorials as I feel a bit more revitalized.

    That is until I hit he next hurdle.

  • sptspt ✭✭

    Working with Unity is truly a headache. I now know my may favorite kickstarter game is so far behind schedule. :(

  • When I really boil it down, its definitely Unity where I am struggling. I feel like there are enough general Unity tutorials out there to start to get the hang of it, but I just can't wrap my brain around the difference between those tutorials, and HoloLens, and the specific differences.

  • utekaiutekai ✭✭✭

    I'm walking this same path and started blogging about it.

    Unity can be handled, it takes persistence. I use a simple approach. By doing small specific tasks that need to be accomplished rather than just trying to learn Unity all at once.

    An online live chat forum would be interesting. A place to hang out, to give help and to get help, and to find others for share project testing.

  • @AVRnj,
    First and foremost, welcome to the HoloLens community! My fellow team members and the community are here and very happy to help answer questions.

    Prior to my joining the HoloLens team, I had no experience in Unity (several years of C#, but none with the Unity engine). The first thing I did was to spend a couple of weeks working exclusively in Unity to build PC applications. I intentionally did not bring HoloLens into the mix until I got a good feel for the Unity workflow.

    I highly recommend going through the basic Unity tutorials (I started with Roll-a-ball and Survival Shooter).

    My next step was to build a simple Windows Store application. This was a key step for me as the .net runtime used in Unity differs from the version used in Windows Store applications.

    Once I completed these steps, I started experimenting in HoloLens, first writing very simple "what happens when I..." type of projects, eventually evolving into some of the content you see when you work through the Holographic Academy.

    This was my personal journey as a new Unity user. I hope others may find it helpful.

    Again, please do not hesitate to ask any questions you have here in the forums.

    Thanks!
    David

  • I am having deployment error with Holograms 101E: Introduction with Emulator as follows:

    Community version of Visual Studio did not work. I have another machine and I have installed enterprise version. Upgraded as per instrution. Able to open and build the .sln file created from Unity.

    Selected Hololens Emulator 10.0.14342.1018!

    I have network and my ip address is 10.0.0.81

    I do not have the device and I am using emulator. Used EmulatorSetup.exe to setup the emulator.

    I am working with the tutorial as follows:

    Emulator

    1.Click on the arrow next to the Device button, and select HoloLens Emulator.
    2.Select Debug > Start without debugging

    When I try to deploy, I get the following error:

    ------ Deploy started: Project: HelloHolograms, Configuration: Release x86 ------

    2>DEP6100 : The following unexpected error occurred during bootstrapping stage 'Connecting to the device 'A2152254-0A5F-7C78-A684-1D8072A02DF5'.':
    2>MissingMethodException - Method not found: 'Boolean Microsoft.Tools.Connectivity.RemoteDevice.Ping()'.
    ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
    ========== Deploy: 0 succeeded, 1 failed, 0 skipped ==========

    Any help will be appreciated.

  • @DavidKlineMS said:
    @AVRnj,
    First and foremost, welcome to the HoloLens community! My fellow team members and the community are here and very happy to help answer questions.

    Prior to my joining the HoloLens team, I had no experience in Unity (several years of C#, but none with the Unity engine). The first thing I did was to spend a couple of weeks working exclusively in Unity to build PC applications. I intentionally did not bring HoloLens into the mix until I got a good feel for the Unity workflow.

    I highly recommend going through the basic Unity tutorials (I started with Roll-a-ball and Survival Shooter).

    My next step was to build a simple Windows Store application. This was a key step for me as the .net runtime used in Unity differs from the version used in Windows Store applications.

    Once I completed these steps, I started experimenting in HoloLens, first writing very simple "what happens when I..." type of projects, eventually evolving into some of the content you see when you work through the Holographic Academy.

    This was my personal journey as a new Unity user. I hope others may find it helpful.

    Again, please do not hesitate to ask any questions you have here in the forums.

    Thanks!
    David

    David, thanks. I think this is the route I am going to go. I am going to spend some time going through the Unity tutorials and hopefully this stuff starts to sink in. One thing I am having a hard time grasping is where the UnityEngine api ends and where the HoloLens api begins, and how they play together and work together. Hopefully I can get some clarification on this over time.

  • @Bulbul_Saha said:
    I am having deployment error with Holograms 101E: Introduction with Emulator as follows:

    Community version of Visual Studio did not work. I have another machine and I have installed enterprise version. Upgraded as per instrution. Able to open and build the .sln file created from Unity.

    Selected Hololens Emulator 10.0.14342.1018!

    I have network and my ip address is 10.0.0.81

    I do not have the device and I am using emulator. Used EmulatorSetup.exe to setup the emulator.

    I am working with the tutorial as follows:

    Emulator

    1.Click on the arrow next to the Device button, and select HoloLens Emulator.
    2.Select Debug > Start without debugging

    When I try to deploy, I get the following error:

    ------ Deploy started: Project: HelloHolograms, Configuration: Release x86 ------

    2>DEP6100 : The following unexpected error occurred during bootstrapping stage 'Connecting to the device 'A2152254-0A5F-7C78-A684-1D8072A02DF5'.':
    2>MissingMethodException - Method not found: 'Boolean Microsoft.Tools.Connectivity.RemoteDevice.Ping()'.
    ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
    ========== Deploy: 0 succeeded, 1 failed, 0 skipped ==========

    Any help will be appreciated.

    @Bulbul_Saha

    I had the same issue when first starting... It had to do with Visual Studio not being installed correctly. To correct I removed Visual Studio, reinstalled and everything worked for me. It must have something with the SDK and Toolkit not being installed or registered properly, but a simple uninstall of Visual Studio and reinstall of Visual Studio did the trick for me.

  • mARkusmARkus
    edited July 2016

    imho, having its own Unity version is one of the best things about HoloLens. You don't need to drag and drop any 3rd party plugin or unity asset. in coding wise, it's already compatible with unity coding environment, both monodevelop and visual studio. developer can also directly use all of the unity's features as well as combine it with other libraries or sdk like iTween for your hololens work. In the beginning I just had a little bit learning curve since I've been using mac environment for years and now need to migrate to windows platform (even I forget where I can find control panel ^^). In the beginning (around 2011), I learned Unity from this website (http://www.unity3dstudent.com/category/modules/) and I found that the explanation is pretty easy to catch. However, it used an old version of unity so I guess some keywords already depreciated or even not exist anymore since Unity evolve quite fast recently. I just hope that Microsoft can create a documentation about Hololens' unity code like the one in Unity's website, therefore we will not just know how to drag-n-drop an existed code from its tutorial but also understand about how each keywords work. Happy Coding ^^

  • @AVRnj,
    Unity has wrapped the Windows 10 and Windows Holographic API into their engine. My recommendation for identifying HoloLens specifics is to take a look a the links under "Building blocks of Holographic apps" section of the documentation.

    Inside there, you will find links to topics such as Gaze input. These pages give topic overviews as well as links (at the bottom of the page) to additional details (ex: Gaze in Unity).

    I hope this is helpful.

    Thanks!
    David

  • Thanks for the help everyone. I am going to spend a few weeks trying to learn Unity first. I did the entire roll a ball tutorial today as a first step, and I am going to go through the other tutirals as well. Even doing something as basic as the roll a ball game, it makes me realize just how much there is to learn about Unity!!

  • @utekai said:

    An online live chat forum would be interesting. A place to hang out, to give help and to get help, and to find others for share project testing.

    There is actually a HoloDevelopers Slack group that I have created, we are coming up on 150 members soon. If you are interested in joining, sign up at https://holodevelopersslack.azurewebsites.net/

  • Unity user for a few years here (design-wise) and coming up on about a year of C# myself. I'd highly recommend that the folks who are on the newer end of the spectrum spend a solid chunk of time just concentrating on those two huge obstacles first, before trying to make serious headway with the Hololens. Try to get your head around building simple applications that will run as executables on your desktop or phone and you will learn a whole wealth of information about how and what you would want to do next.
    I spent a bit of time trying to put simple things together like jumping games/etc on my phone - while it sounds horribly pedestrian, the experience taught me so much about building my own tools and how to expand them to do larger varieties of things (how and why to get different elements of game scenarios to interact with each other, in a nutshell). From there, so much of that knowledge was instantly applicable to working in actual 3D space and even though I am still super-noob, the head start was more useful than I can express.
    I'll post some of the tutorials I found most useful, later on in this thread. It cannot be understated how critical that one has a decent understanding of the foundations to be constructive (and to work in a gratifying manner) with this stuff. Fortunately, there is a wealth of info and tools out there for those who are willing to put in the time and effort.
  • Hololens is my first foray into Unity and C#. Having said that, I've found that the easiest way for me to move through the problems I have is to keep a scratch project available at all times. That way, if something doesn't work in my main program, I can test a single feature out without the bloat of everything else I am doing. This has been the best way for me to learn too - I can take something aside, play with it, test it, break it, and learn from it. I recommend this to everyone.

  • Did anyone ever figure out how to get the Roll-a-ball Unity tutorial to work on HoloLens? I am definitely struggling. I have managed to scale the stage down somewhat, and using the HoloLens Emulator I can roll the ball with the keyboard and even somewhat reasonably well with walking using an actual HoloLens, but I'm struggling with object collection. If I collect the objects the same way as the tutorial, the items don't disappear when working with the HoloLens. It's like the onCollision (I believe this is what I used) function is not working on the HoloLens.

  • @AVRnj Unity is very useful for HoloLens but there are some key concepts to use.

    • Unity is at the front of your development pipeline. It generates visual studio solutions to run on devices like HoloLens. Unity can also use xcode on mac, or Mono. In Unity you make a scene, then add scripts (C# classes) in the scene, then generate a project for your platform compiler to build as an application.
    • Unity owns the main() procedure, in other words it is the main process that runs, not your code. It will call your code. Like many scene graph systems (SGI Performer, OSG, etc.) it owns the main loop where it updates it's scene each rendering frame.
    • Your class instances in C# have standard methods like start() and update() which they inherit from MonoBehavior which are entry points into your code called from this main loop.
    • So your classes must be added as components to GameObjects in the Unity scene, and then the Unity scene must be selected (checked) in the build player settings for your code to run.
    • Unity can build to many platforms many of which are walled in for security like iOS and UWP (universal windows platform), so it uses the Assets folder to contain almost everything, and has standard places like the Assets/Resources file where it looks for things at runtime.
    • It is useful to debug with the Unity player in the Unity application on your development computer before building for HoloLens at each iteration. Your visual studio debugger attaches to your running Unity application and can give you useful insights.
    • Unity loads models in FBX format, an Autocad format. Since they come from the games industry, they like for you to define all your models before building your application. That lets them bake certain things in for optimization of your scene. They take models in other formats and translate these into FBX format for their importing process.
    • A great resource to see how the interface between Unity and HoloLens works in code is actually the HoloToolkit-Unity sources on Github: https://github.com/Microsoft/HoloToolkit-Unity . In there is the code for cursors, gaze manager, voice input, gestures, working with anchors, sharing your scene across hololens, loading files (meshes in this case) using UWP fileStorage, and even spatial understanding - abstracting spatial mapping from HoloLens into areas and surfaces you would want to use in your application.
    • If you use HoloToolkit-Unity, which is a good idea, you download it, open it as a Unity project, run an example to make sure it is working, then under the Assets menu, export as package, and load this package each time into your development unity projects. It will add an editor menu to Unity called "HoloToolkit" and you can select Configure : Apply HoloLens Scene Settings and Configure : Apply HoloLens Project Settings to set the right properties to build for HoloLens.
Sign In or Register to comment.