Hey!
Issue:
We recently upgraded a project to the Unity beta 2017.3.0f2 in hopes to try out the new Vuforia update. After the upgrade we found the camera had FoV issues that create a border around the camera feed changing colour depending on what the camera's background colour is set to.
The issue at first looks as if the background plane doesn't scale to fill the whole screen, but upon further investigation we found the FOV wasn't actually adjusting to the correct value. When you first launch the application it seems fine, but when you press the home button and reenter the application it would adjust the scale again, sometimes it would fill the screen but most of the time it wouldn't.
The issue was seen on an iPhone 8, 7 6, and iPhone X. The size of the border that is visible is different on each device. The iPhone X at times can have a very tiny one you almost don't see.
We noticed in Xcode that at times ARKit would disrupt the camera even though the project wasn't using ARKit at all. The error thrown was:
[Session] Session (0x1414860c0): did fail with error: Error Domain=com.apple.arkit.error Code=102 "Required sensor failed." UserInfo={NSLocalizedRecoverySuggestion=Make sure that the application has the required privacy settings., NSLocalizedDescription=Required sensor failed., NSLocalizedFailureReason=A sensor failed to deliver the required input.}
This doesn't seem to be the exact problem with the fov, as the issue appears even when this error isn't thrown. But it definitely disrupts vuforia at times.
What we have tried:
We have tried re initialising the camera, starting and stopping the camera, and then just simply rescaling the background plane. We found the best solution so far was when resuming the application, wait for the camera to be activated then change the FOV of the camera. Vuforia then, readjusts the camera to the correct FOV that fills the screen correctly. It's a very hacky fix, but it's working for us. There is also the side issue that at times the camera can take 2-3 seconds to start up when resuming the application, but if it has no borders we are fine with it.
Is the issue described a known issue? Doesn't anyone know of an alternative fix?
Edit:
It seems this is actually more related to the camera field of view. A temp fix I have is to set the Camera.main.fieldOfView to 30 and then vuforia seems to notice it's changed and resets it. When it resets the field of view the background plane fits the camera view again.
Edit 2:
I updated the thread title and this post to describe the issue more clearly. Instead of discussing the background plane not scaling correctly.
Still not fixed. Running on iPhone Xs, built with Unity 2019.1.3f2. Sometimes it works, sometimes it doesn't. Attached is a screenshow showing how it looks like when it doesn't. Works good on Android devices.
(The camera plane is obviously meant to fill the entire screen).