iOS 64 bits - UnityEngine.ddl fails to find types

February 13, 2015 - 2:03am #1

Hi everyone !

As Apple requires bot 32 and 64 bits app since February 1st, I'm trying to upgrade an existing App (which was working like a charm thanks to Vuforia).

I've use the latest Unity version (4.6.2.f1) and the latest Vuforia extension for Unity (Vuforia 4.0 beta).

I've managed to generate App code from Unity (after having followed https://developer-beta.vuforia.com/library/articles/Solution/iOS-64-Bit-Migration and changed the Scripting Backend), and to build my app.

But I have a major crash when launching my app : 

 

-> applicationDidBecomeActive()

QCAR Extension version 3.0.0

QCAR SDK version 3.0.9

Version:  OpenGL ES 2.0 IMGSGX543-113.3

Creating OpenGLES2.0 graphics device

Initialize engine version: 4.6.2f1

Unable to find type [UnityEngine.dll]UnityEngine.ResourceRequest 

(Filename:  Line: 34)

 

Does this speak to anyone ? I'm getting very afraid of what I'm reading on the Web...

iOS 64 bits - UnityEngine.ddl fails to find types

February 24, 2015 - 6:17am #10

The Vuforia SDK 4.0 for Mobile is now available for download:

https://developer.vuforia.com/downloads/sdk

https://developer.vuforia.com/downloads/samples

iOS 64 bits - trackerManagerInitTracker NullReferenceException

February 24, 2015 - 3:05am #9

Renaming subject for future searches

iOS 64 bits - UnityEngine.ddl fails to find types

February 24, 2015 - 3:02am #8

Everything works well now, thanks again !

iOS 64 bits - UnityEngine.ddl fails to find types

February 24, 2015 - 2:49am #7

Hi Alessandro,

thank you so much, you're a life saver !

Just to let you know that you did help me, I managed to do everything except this step

  • select any Dataset you want to Load and Activate in the QCARBehaviour inspector

This is clearly a newbie question, I'll search for documentation on this topic.

Now I don't have the NullReferenceException when initializing the tracker, but plenty of "Trackable XXX lost" messages (due to the fact that I did not load my assets through the expected mechanism).

Thanks again for your help !

iOS 64 bits - UnityEngine.ddl fails to find types

February 24, 2015 - 1:25am #6

Thanks for the screenshot of the ARCamera; 

 

as I suspected, something was wrong with the ARCamera; if you look at your scene hierarchy, the ARCamera does not contain any child object;

 

in Vuforia 4.0, an ARCamera is no longer a Unity Camera (i.e. it does not have any Camera component attached), however it always includes a child Camera object; the Camera then also has another child object called "BackgroundPlane"; the scene hierarchy is basically as followes: 

  • ARCamera
    •  Camera
      • BackgroundPlane

 

Your scene hierarchy has an ARCamera, but it does not show any children under ARCamera; that's probably because something went wrong during the upgrade.

How to fix this:

  • remove your ARCamera from your scene
  • open the 'Assets/Qualcomm Augmented Reality/Prefabs' folder in the Project view
  • select an ARCamera prefab and drag it into your scene; this should now have the proper hierarchy as explained above
  • copy-paste again the License Key into the ARCamera and select any Dataset you want to Load and Activate in the QCARBehaviour inspector

 

 

 

 

iOS 64 bits - UnityEngine.ddl fails to find types

February 24, 2015 - 12:43am #5

Hi Alessandro,

re-importing the vuforia extension does not change anything, I still get the trackerManagerInitTracker's NullReferenceException.

In attachement a screenshot of my Unity project. each node except camera is a contains both the picture that must be recognized, and the 3d character to show when recognized.

Thanks a lot for your help !

Alex

AttachmentSize
Image icon Unity-Project.png381.01 KB

iOS 64 bits - UnityEngine.ddl fails to find types

February 21, 2015 - 4:36am #4

OK, glad to hear that the first issue is solved. For the new issue:

1. could you try re-importing the vuforia-sdk-unity extension package into your project, once again ? 

2. could you post a screenshot of the ARCamera scene hierarchy in your scene and of the ARCamera inspector ?

 

iOS 64 bits - UnityEngine.ddl fails to find types

February 19, 2015 - 7:46am #3

Hi Alessandro,

thanks a lot for the reply ! Indeed I had to remove the Library folder and re-generate (and actually add a valid Vuforia API key).

Now my application builds, launches (with a Valid API key for the 4.0.11 beta) : 

Setting Unity version 4.6.2

QCAR Extension version 4.0.11

Initializing Vuforia...

QCAR SDK version 4.0.11

QCAR initialization successful

But I have a black screen... Maybe this has something to do with the new il2cpp scripting engine ? Sorry if I'm missing something obvious here.

Here are the only 2 error messages I have : 

trackerManagerInitTracker

NullReferenceException: A null value was found where an object instance was required.

  at AudioManager..ctor () [0x00000] in <filename unknown>:0 

  at Vuforia.QCARAbstractBehaviour.Start () [0x00000] in <filename unknown>:0 

  at Replacements.Attribute.CheckParameters (System.Object element, System.Type attributeType) [0x00000] in <filename unknown>:0 

Replacements.Attribute:CheckParameters(Object, Type)

(Filename: currently not available on il2cpp Line: -1)

If I put focus to another app and get back to my app : 

cameraDeviceInitCamera

2015-02-19 16:43:55.251 STRAN[513:194216] *** -[AVCaptureVideoDataOutput setVideoSettings:] - videoSettings dictionary contains one or more unsupported (ignored) keys: (

    Height,

    Width

)

cameraDeviceGetVideoMode

NullReferenceException: A null value was found where an object instance was required.

  at AudioManager..ctor () [0x00000] in <filename unknown>:0 

  at Vuforia.QCARAbstractBehaviour.set_VideoBackGroundMirrored (Boolean value) [0x00000] in <filename unknown>:0 

  at Vuforia.QCARAbstractBehaviour.ConfigureVideoBackground (Boolean forceReflectionSetting) [0x00000] in <filename unknown>:0 

  at Vuforia.CameraDeviceImpl.Init (CameraDirection cameraDirection) [0x00000] in <filename unknown>:0 

  at Vuforia.WordBehaviour..ctor () [0x00000] in <filename unknown>:0 

  at Vuforia.QCARAbstractBehaviour.StartQCAR (Boolean startObjectTracker, Boolean startMarkerTracker) [0x00000] in <filename unknown>:0 

  at Vuforia.QCARAbstractBehaviour.OnApplicationPause (Boolean pause) [0x00000] in <filename unknown>:0 

iOS 64 bits - UnityEngine.ddl fails to find types

February 13, 2015 - 4:58am #2

Hi, the error message suggests that you're still on Vuforia 3.0, which might mean the migration to 4.0 was not done entirely.

Make sure you have removed any binary / DLLs that might still point to the old 3.0,

Some extra tips:

- close your project

- REMOVE the "/Library" folder under your project

- reopen the project and let Unity regenerate the Library folder automatically; sometimes the "old" Library folder might still contain some old binaries

 

 

 

Topic locked