microsoft / MixedRealityDesignLabs_Unity

Mixed Reality Design Labs share experimental samples, explorations and learning from Windows Mixed Reality Design group. If you are looking for official toolkit, please use Mixed Reality Toolkit
MIT License
408 stars 110 forks source link

ManipulationGizmo example in Unity2017.1-Dev branch problems. #79

Closed oshea00 closed 6 years ago

oshea00 commented 6 years ago

Question #1 - Has anyone (contributer) recently tried to clone and build the current Unity2017.1-Dev branch in a new local directory/repo - I don't think it works the way the readme.md indicates anymore? It would be nice to update the readme.md on this branch to reflect how to build the branch and load into unity as a working project(s).

I've spent 8 hours trying to get the Unity2017.2-Dev branch to build and run in Unity 2017.2. I've found some real issues trying to get the submodule bits for that branch (see Issue #78)

Question #2 - Has anyone tried running the ManipulationGizmo_Examples recently in the Unity2017.1-Dev branch? I'm getting a null pointer reference while running in Hololens emulator 10.0.14393.1358. Also many script component references seem to be bad...

Now that I seem to have the DesignLabs_Unity_Examples loaded into Unity with no errors, as I look at the objects in the example scene ManipulationGizmo_Examples, I see a lot of "missing script" problems in them - for example both ObjectCollection objects have "Nothing Selected" missing Mono script entries on them.

When I build this scene for Hololens - it loads in the emulator but throws null pointer exception:

Exception thrown: 'System.NullReferenceException' in UnityEngine.CoreModule.dll NullReferenceException: Object reference not set to an instance of an object. at UnityEngine.GeometryUtility.CalculateFrustumPlanes(Camera camera) at HoloToolkit.Unity.SimpleTagalong.Update() at HoloToolkit.Unity.Tagalong.Update() at HoloToolkit.Unity.Tagalong.$Invoke7Update(Int64 instance, Int64 args) at UnityEngine.Internal.$MethodUtility.InvokeMethod(Int64 instance, Int64 args, IntPtr method) (Filename: Line: 0)

My best guess is the camera reference is null because the project/scene structure is broken in many ways. I'd love to help fix a lot of these issues if I can get some initial help loading up the projects.

Thanks! Mike

oshea00 commented 6 years ago

Update: I managed to get the source code to compile and build using this method:

  1. Git Clone the repo.
  2. Checkout Unity2017.2-Dev branch.
  3. Use this specific command to download submodule branches: git submodule update --init --recursive
  4. Opened in Unity 2017.2
  5. There is a missing using statement compile error in one file - easily fixed.
  6. Import font asset (as directed) HoloSymMDL2.ttf and assign to default button profile. The "open profile" menu doesn't get you there anymore - you have to search for the button profile using the unity search tool.
  7. Change the build settings target to "Hololens"
  8. Add the ManipulationGizmo example scene to the build settings.
  9. Builds clean.10. Open solution in VS 2017 - change to X86 and select the Hololens Emulator 10.0.14393.1358.