UPDATE:
we have identified a simple fix for the GearVR integration using the VR Support in Unity 5.3.4 (also applicable to 5.3.3 patch p2/p3):
- open the VRIntegrationHelper.cs script, located in Assets/Vuforia/Scripts/Utilities
- replace the code in void OnPreRender() with the following code:
void OnPreRender()
{
// on pre render is where projection matrix and
// pixel rect are set up correctly (for each camera
// individually) so we use this to acquire this data.
if (IsLeft && !mLeftCameraDataAcquired)
{
if (
!float.IsNaN(mLeftCamera.projectionMatrix[0,0]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[0,1]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[0,2]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[0,3]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[1,0]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[1,1]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[1,2]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[1,3]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[2,0]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[2,1]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[2,2]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[2,3]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[3,0]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[3,1]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[3,2]) &&
!float.IsNaN(mLeftCamera.projectionMatrix[3,3])
)
{
mLeftCameraMatrixOriginal = mLeftCamera.projectionMatrix;
mLeftCameraPixelRect = mLeftCamera.pixelRect;
mLeftCameraDataAcquired = true;
}
}
else if (!mRightCameraDataAcquired)
{
if (
!float.IsNaN(mRightCamera.projectionMatrix[0,0]) &&
!float.IsNaN(mRightCamera.projectionMatrix[0,1]) &&
!float.IsNaN(mRightCamera.projectionMatrix[0,2]) &&
!float.IsNaN(mRightCamera.projectionMatrix[0,3]) &&
!float.IsNaN(mRightCamera.projectionMatrix[1,0]) &&
!float.IsNaN(mRightCamera.projectionMatrix[1,1]) &&
!float.IsNaN(mRightCamera.projectionMatrix[1,2]) &&
!float.IsNaN(mRightCamera.projectionMatrix[1,3]) &&
!float.IsNaN(mRightCamera.projectionMatrix[2,0]) &&
!float.IsNaN(mRightCamera.projectionMatrix[2,1]) &&
!float.IsNaN(mRightCamera.projectionMatrix[2,2]) &&
!float.IsNaN(mRightCamera.projectionMatrix[2,3]) &&
!float.IsNaN(mRightCamera.projectionMatrix[3,0]) &&
!float.IsNaN(mRightCamera.projectionMatrix[3,1]) &&
!float.IsNaN(mRightCamera.projectionMatrix[3,2]) &&
!float.IsNaN(mRightCamera.projectionMatrix[3,3])
)
{
mRightCameraMatrixOriginal = mRightCamera.projectionMatrix;
mRightCameraPixelRect = mRightCamera.pixelRect;
mRightCameraDataAcquired = true;
}
}
}
I have solved it! See this: https://developer.vuforia.com/forum/issues-and-bugs/split-binary-unable-find-extended-root-locations
Don't check Split Application Binary item in the Settings for Android->Pulishing Settings, when to build android app.
Thanks for your help, freele.