We are producing an application that involves selecting and displaying information on parts of a product utilizing the Moverio BT-200.
To select the parts, a user points at a part with the cursor, and we raycast from either of the stereo Cameras into the scene to determine what was selected.
The normal camera raycasting functions (ScreenPointToRay, ViewportPointToRay, etc.) seem to break when a custom projection matrix is used,
so we looked at the projection matrix of the stereo cameras through XCode and found these values for the left camera:
[5.30353, 0.14888, -0.34201, 516.74510]
[-0.23685, 9.43877, 0.43590, -59.87226]
[-0.06558, 0.04443, -0.99766, -44.03362]
[-0.06553, 0.04439, -0.99686, -40.00000]
and these for the right camera:
[5.19359, 0.12538, -0.27394, 248.34650]
[-0.20781, 9.24169, 0.29011, -152.28200]
[-0.05342, 0.03016, -0.99892, -44.03362]
[-0.05337, 0.03013, -0.99812, -40.00000]
Which do not correspond to any normal on or off-axis projection matrices. Through experimentation, we found that these projection matrices
do not produce a proper canonical viewport volume, which makes it difficult for us to write our own accurate screen raycasting function.
Do these seem like valid projection matrices? The AR content seems to line up reasonably.
If so, is there a good method to do raycasting based off them?
Turning background on and off in Moverio
Hello JZavaleta,
For the BT-200 you should not need to turn the video background off yourself, this is done automatically when Vuforia detects the Epson device. If this is not working please confirm that you are using a Vuforia for Digital Eyewear license key.