Thanks for the link, Monster. Your example works great but I have one question. Referencing the CMD, I see that the file loads with 0.1 separation and 0.0 focalLength. As I hit either * or / the CMD updates with a focusLength of 3. From that point on, it scales with your separation at the same rate. My question is this:
Where does the value of 3 exist and how does it get applied?
The reason I ask is because I added an “invert” game property float with a value of -1. The intent is to flip the current stereo settings to their exact invert. My logic bricks look like:
Keyboard(f7) > And > Property (Mode: Assign, Property: sep, Value: sep*invert)
From the logic I can reference in your scene and python script, it should exactly invert the settings, but this is what I see in my CMD when I hit the f7 key:
0.1 separation, 0 focusLength
-0.1 separation, 3 focusLength
0.1 separation, -3 focusLength
-0.1 separation, 3 focusLength
etc
From my understanding on 3D in blender, the convergence point of the 3D camera rig is at the focusLength. Since the value of 3 is being applied after the initial state, when I invert, the relationship of my camera separation to focusLength changes. This causes the visual “depth” of the scene to change with the invert rather than stay the same, but with flipped camera positions.
Ideally, my CMD would read like this when I hit my f7 invert key:
0.1 separation, 0 focusLength
-0.1 separation, 0 focusLength
0.1 separation, 0 focusLength
-0.1 separation, 0 focusLength
or
0.1 separation, 3 focusLength
-0.1 separation, 3 focusLength
0.1 separation, 3 focusLength
-0.1 separation, 3 focusLength
etc
This will allow my depth budget in relation to my focusLength to remain consistent when the camera position switch.
As always, thanks for the help and continued support from you and the whole blender community!