Log in or register to post comments

Extending a Hololens Unity project with Vuforia tracking makes it impossible to build

September 27, 2019 - 12:30am #1

Vuforia SDK Version: 8.3.9 -

Description with steps to reproduce: I created a Hololens project in Unity 2019. It builds and runs fine.

Then I tried adding an Vuforia object target (along with the camera script). Now the project won't build (though it does run without errors in play mode). I've narrowed down that the issue starts when enabling Vuforia support in the player settings. When I disable it, it works again. I will attach the whole console log from the build below.

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Reference Rewriter found some errors while running with command "--target=Temp\StagingArea\Data\Managed\Assembly-CSharp.dll" "--target=Temp\StagingArea\Data\Managed\Microsoft.MixedReality.Toolkit.Services.SceneSystem.dll" [ list continues on for many lines ]

Reference rewriter: Error: type `UnityEngine.Experimental.Rendering.RenderPipeline` doesn't exist in target framework. It is referenced from Vuforia.UnityExtensions.dll at System.Void Vuforia.UnityRenderEventBroadcaster::UnregisterScriptableRenderPipeline().
UnityEngine.Debug:LogError(Object)
PostProcessWinRT:RunReferenceRewriter() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:1164)
PostProcessWinRT:Process() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:206)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

Reference rewriter: Error: method `System.Void UnityEngine.Experimental.Rendering.RenderPipeline::remove_beginFrameRendering(System.Action`1)` doesn't exist in target framework. It is referenced from Vuforia.UnityExtensions.dll at System.Void Vuforia.UnityRenderEventBroadcaster::UnregisterScriptableRenderPipeline().
UnityEngine.Debug:LogError(Object)
PostProcessWinRT:RunReferenceRewriter() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:1164)
PostProcessWinRT:Process() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:206)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

Reference rewriter: Error: type `UnityEngine.Experimental.Rendering.RenderPipeline` doesn't exist in target framework. It is referenced from Vuforia.UnityExtensions.dll at System.Void Vuforia.UnityRenderEventBroadcaster::UnregisterScriptableRenderPipeline().
UnityEngine.Debug:LogError(Object)
PostProcessWinRT:RunReferenceRewriter() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:1164)
PostProcessWinRT:Process() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:206)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

Reference rewriter: Error: method `System.Void UnityEngine.Experimental.Rendering.RenderPipeline::remove_beginCameraRendering(System.Action`1)` doesn't exist in target framework. It is referenced from Vuforia.UnityExtensions.dll at System.Void Vuforia.UnityRenderEventBroadcaster::UnregisterScriptableRenderPipeline().
UnityEngine.Debug:LogError(Object)
PostProcessWinRT:RunReferenceRewriter() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:1164)
PostProcessWinRT:Process() (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/PostProcessWinRT.cs:206)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

Failed running C:\Program Files\Unity\Hub\Editor\2019.3.0a11\Editor\Data\il2cpp\build/UnityLinker.exe -out=C:/Unity [... list goes on]

Exception: C:\Program Files\Unity\Hub\Editor\2019.3.0a11\Editor\Data\il2cpp\build/UnityLinker.exe did not run properly!

Build completed with a result of 'Failed'
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

UnityEditor.BuildPlayerWindow+BuildMethodException: 8 errors
at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x00275] in :0
at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x00080] in :0
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
-

Development OS (Mac OS X, Windows, Linux): Windows 10 -

Mobile OS and Version: Hololens -

Mobile Device Manufacturer and Model name: Hololens -

Do the Vuforia Sample Applications show the same behavior?: yes

Extending a Hololens Unity project with Vuforia tracking makes it impossible to build

October 6, 2019 - 10:27pm #3

Hi,

 

the project is running on Unity 2019.3.0a. Though I have tried using my project assets in 2019.1.9 to no success.

I updated the 3.0a version to Vuforia 8.5, now I get a whole new set of errors without even hitting play mode. I will post them below:

 

Error: Could not load signature of OpenSourceInitializer:ReplaceTrackablePlaceHolder due to: Could not resolve type with token 01000008 (from typeref, class/assembly DefaultTrackableBehaviourPlaceholder, Vuforia.UnityExtensions, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null) assembly:Vuforia.UnityExtensions, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null type:DefaultTrackableBehaviourPlaceholder member:(null) signature:<none>

 

Unloading broken assembly Library/ScriptAssemblies/VuforiaEditorScripts.dll, this assembly can cause crashes in the runtime

 

Unloading broken assembly Library/ScriptAssemblies/VuforiaScripts.dll, this assembly can cause crashes in the runtime

 

ReflectionTypeLoadException: Exception of type 'System.Reflection.ReflectionTypeLoadException' was thrown.

System.Reflection.Assembly.GetTypes () (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.GetTypesFromAssemblies (System.Type type, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction, System.Reflection.Assembly[] assemblies) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:111)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.EnsureCacheForTypes (System.Collections.Generic.List`1[T] types, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:92)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.FindTypes (System.Collections.Generic.List`1[T] types, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:50)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.Find (System.Collections.Generic.List`1[T] types, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:29)

Microsoft.MixedReality.Toolkit.UI.States.SetupStateOptions () (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/States/States.cs:72)

Microsoft.MixedReality.Toolkit.UI.States.OnEnable () (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/States/States.cs:42)

 

ReflectionTypeLoadException: Exception of type 'System.Reflection.ReflectionTypeLoadException' was thrown.

System.Reflection.Assembly.GetTypes () (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.GetTypesFromAssemblies (System.Type type, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction, System.Reflection.Assembly[] assemblies) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:111)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.EnsureCacheForTypes (System.Collections.Generic.List`1[T] types, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:92)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.FindTypes (System.Collections.Generic.List`1[T] types, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:50)

Microsoft.MixedReality.Toolkit.UI.InteractableTypeFinder.Find (System.Collections.Generic.List`1[T] types, Microsoft.MixedReality.Toolkit.UI.TypeRestriction typeRestriction) (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/TypeResolution/InteractableTypeFinder.cs:29)

Microsoft.MixedReality.Toolkit.UI.States.SetupStateOptions () (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/States/States.cs:72)

Microsoft.MixedReality.Toolkit.UI.States.OnEnable () (at Assets/MixedRealityToolkit.SDK/Features/UX/Interactable/Scripts/States/States.cs:42)

 

ReflectionTypeLoadException: Exception of type 'System.Reflection.ReflectionTypeLoadException' was thrown.

System.Reflection.Assembly.GetTypes () (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

Microsoft.MixedReality.Toolkit.Utilities.Facades.ServiceFacadeEditor+<>c.<InitializeServiceInspectorLookup>b__16_0 (System.Reflection.Assembly assembly) (at Assets/MixedRealityToolkit/Inspectors/ServiceInspectors/ServiceFacadeInspector.cs:285)

System.Linq.Parallel.SelectManyQueryOperator`3+SelectManyQueryOperatorEnumerator`1[TLeftInput,TRightInput,TOutput,TLeftKey].MoveNext (TOutput& currentElement, System.Linq.Parallel.Pair`2[TLeftKey,System.Int32]& currentKey) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.SelectQueryOperator`2+SelectQueryOperatorEnumerator`1[TInput,TOutput,TKey].MoveNext (TOutput& currentElement, TKey& currentKey) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.WhereQueryOperator`1+WhereQueryOperatorEnumerator`1[TInputOutput,TKey].MoveNext (TInputOutput& currentElement, TKey& currentKey) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.SelectQueryOperator`2+SelectQueryOperatorEnumerator`1[TInput,TOutput,TKey].MoveNext (TOutput& currentElement, TKey& currentKey) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.PipelineSpoolingTask`2[TInputOutput,TIgnoreKey].SpoolingWork () (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.SpoolingTaskBase.Work () (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.QueryTask.BaseWork (System.Object unused) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.QueryTask+<>c.<.cctor>b__10_0 (System.Object o) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Threading.Tasks.Task.InnerInvoke () (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

System.Threading.Tasks.Task.Execute () (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

Rethrow as AggregateException: One or more errors occurred.

System.Linq.Parallel.QueryTaskGroupState.QueryEnd (System.Boolean userInitiatedDispose) (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.AsynchronousChannelMergeEnumerator`1[T].MoveNextSlowPath () (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.AsynchronousChannelMergeEnumerator`1[T].MoveNext () (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

System.Linq.Parallel.QueryOpeningEnumerator`1[TOutput].MoveNext () (at <fbb5ed17eb6e46c680000f8910ebb50c>:0)

Microsoft.MixedReality.Toolkit.Utilities.Facades.ServiceFacadeEditor.InitializeServiceInspectorLookup () (at Assets/MixedRealityToolkit/Inspectors/ServiceInspectors/ServiceFacadeInspector.cs:290)

Microsoft.MixedReality.Toolkit.Utilities.Facades.ServiceFacadeEditor.DrawSceneGUI (UnityEditor.SceneView sceneView) (at Assets/MixedRealityToolkit/Inspectors/ServiceInspectors/ServiceFacadeInspector.cs:341)

UnityEditor.SceneView.CallOnSceneGUI () (at <7b513489a0a84a38ba47d891191a9f18>:0)

UnityEditor.SceneView.HandleSelectionAndOnSceneGUI () (at <7b513489a0a84a38ba47d891191a9f18>:0)

UnityEditor.SceneView.OnGUI () (at <7b513489a0a84a38ba47d891191a9f18>:0)

System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.

System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at <ad04dee02e7e4a85a1299c7ee81c79f6>:0)

UnityEditor.HostView.Invoke (System.String methodName, System.Object obj) (at <7b513489a0a84a38ba47d891191a9f18>:0)

UnityEditor.HostView.Invoke (System.String methodName) (at <7b513489a0a84a38ba47d891191a9f18>:0)

UnityEditor.HostView.InvokeOnGUI (UnityEngine.Rect onGUIPosition, UnityEngine.Rect viewRect) (at <7b513489a0a84a38ba47d891191a9f18>:0)

UnityEditor.DockArea.DrawView (UnityEngine.Rect viewRect, UnityEngine.Rect dockAreaRect) (at <7b513489a0a84a38ba47d891191a9f18>:0)

UnityEditor.DockArea.OldOnGUI () (at <7b513489a0a84a38ba47d891191a9f18>:0)

UnityEngine.UIElements.IMGUIContainer.DoOnGUI (UnityEngine.Event evt, UnityEngine.Matrix4x4 parentTransform, UnityEngine.Rect clippingRect, System.Boolean isComputingLayout, UnityEngine.Rect layoutSize, System.Boolean eventIsPropagatedFromNonFocusableVisualElement) (at <08a5816fa8214e36a47be4b6d82efaf3>:0)

UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

 

GUI Error: You are pushing more GUIClips than you are popping. Make sure they are balanced.

UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

 

And then the last 3 errors repeat endlessly.

 

Extending a Hololens Unity project with Vuforia tracking makes it impossible to build

October 2, 2019 - 12:37am #2

Hi,

As per the error it seems that Vuforia is trying to use an Experimental Pipeline that apparently is not available in Unity anymore.

Could you please confirm which Unity version are you using?

In addition, yesterday, we launched Vuforia 8.5. Maybe it would be worth to upgrade to 8.5 and see if it works.

Thank you.

Vuforia Engine Support

Log in or register to post comments