Inverted video image and inverted phone moves in stereoscopic view using Metal

SPECIFIC ISSUE ENCOUNTERED

I'm playing VR videos through my app using Metal graphics API with Cardboard XR Plugin for Unity. After the recent iOS 16 update (and Xcode 14 update too), videos in stereoscopic mode were flipped upside down and backwards. After trying to change sides manually in code, I only managed to show correct sides (it's not all upside down anymore), but when I turn the phone UP, the view is moving DOWN to the ground, and vice versa. Same issue for left-right phone moving. Also Unity-made popup question is shown on the wrong side (backside - shown in the video attachment)

Here is the video of the issue for inverted (upside down flip) view: https://www.dropbox.com/s/wacnknu5wf4cif1/Everything%20upside%20down.mp4?dl=0

Here is the video of inverted moving: https://www.dropbox.com/s/7re3u1a5q81flfj/Inverted%20moving.mp4?dl=0

IMPORTANT: I did manage few times fixing it to work on local build, but when I build it for TestFlight, it is always inverted.

WHAT I SUSPECT

I found numerous other developers encountered this issue when they were using Metal. Back in the days when OpenGL ES 2 and 3 were still supported by Apple, it did fix the issue switching on one of those. But now since only Metal is supported with new Unity, there is no workaround, and also I would like to use Metal.

DEVICE

multiple iPhones running multiple iOS 16 versions has this issue. Specific OS version is 16.1

EXPECTED BEHAVIOR

VR videos should show right side (not upside down image) and moving up should show upper part of the video, and vice versa. Same goes for left and right move. Currently everything is flipped, but not every time the same kind of flip. Sometimes in rare cases it's even shown correctly.

VERSIONS USED

What version of Google Cardboard are you using?

Cardboard XR Plugin 1.18.1

What version of Unity are you using?

2022.1.13f1

Replies

I'm late to the party, but just starting to look at playing video in Cardboard for Unity. Did you ever figure this out?