New to the forums? Click here to read the "How To" Guide.

Developer? Click here to go to the Developer Forums.

How to set IPD?

spyrospyro Posts: 334
Hiro Protagonist
edited April 2013 in Games and Apps
Hi there,

I wonder how can I set my IPD in all the Unity Demos and in Oculus World? When pressing space I can see a default setting of 64 mm (I have 59). Does anyone know how to change this?

Thank you,
Spyro

Comments

  • ianmacmillanianmacmillan Posts: 95
    Hiro Protagonist
    spyro wrote:
    Hi there,

    I wonder how can I set my IPD in all the Unity Demos and in Oculus World? When pressing space I can see a default setting of 64 mm (I have 59). Does anyone know how to change this?

    Thank you,
    Spyro

    In Unity, hit space bar to bring up stats dialog, then use the + and - keys for IPD ( or it may be the square brackets keys...going from memory). Something to note, though, is that it is my opinion, from experience, that you're almost better off leaving Unity's IPD at 64mm so that it matches the separation of the lenses (which are fixed at 64mm). I found that it's more comfortable on my eyes if two adjacent IPDs of the three IPDs line up (in order, from screen to eyes: Unity IPD = 64, Lens IPD = 64, and your eyes at XX). If I change the Unity IPD, then the photons bend twice before reaching my eyes, which seems to compound eye strain. ( note that that was my very unscientific explanation of why it hurts my eyes more when I set Unity IPD to match my eyes).

    Edit to add: it's not a case of the photons bending twice, but rather the angle that they have to bend increases...I think. Also, let's us know if you find the same thing (increased eye strain) when you set Unity's IPD to match your eyes. Maybe it's just me.

    Note that the ideal solution would be adjustable lens separation so that all three parameters can be lined up. Maybe in Rift, V.2...?
  • geekmastergeekmaster Posts: 2,866
    Nexus 6
    The eye strain is from tantential distortion causing the vertical misalignment of parts of the two images while trying to view them stereoscopically. This happens when viewing from an IPD that does not go through the optical axis (sweet spot) of the lens. Mismatched eye/lens IPD also causes increased chromatic aberration. Both of these things can be corrected in software with a better pre-warp shader that does not leave out the tangential distortion and chromatic aberration correction portions of the "Brown's model" lens distortion correction formula.

    I have an OpenGL shader that performs the full Brown's model correction, but I have not tested it yet. I plan to use it on my Raspberry Pi (if I do not replace it with a cached displacement map first).
  • MarkMark Posts: 10
    NerveGear
    geekmaster wrote:
    The eye strain is from tantential distortion causing the vertical misalignment of parts of the two images while trying to view them stereoscopically. This happens when viewing from an IPD that does not go through the optical axis (sweet spot) of the lens. Mismatched eye/lens IPD also causes increased chromatic aberration. Both of these things can be corrected in software with a better pre-warp shader that does not leave out the tangential distortion and chromatic aberration correction portions of the "Brown's model" lens distortion correction formula.

    I have an OpenGL shader that performs the full Brown's model correction, but I have not tested it yet. I plan to use it on my Raspberry Pi (if I do not replace it with a cached displacement map first).
    Is it just Unity that doesn't have this "Brown's model" correction, or does the Oculus SDK lack this as well?

    My IPD is 55. I don't have my Rift yet, so I don't know what it will be like to use it, but I'd like to find out how to best compensate for the IPD mismatch.
  • geekmastergeekmaster Posts: 2,866
    Nexus 6
    Mark wrote:
    geekmaster wrote:
    The eye strain is from tantential distortion causing the vertical misalignment of parts of the two images while trying to view them stereoscopically. This happens when viewing from an IPD that does not go through the optical axis (sweet spot) of the lens. Mismatched eye/lens IPD also causes increased chromatic aberration. Both of these things can be corrected in software with a better pre-warp shader that does not leave out the tangential distortion and chromatic aberration correction portions of the "Brown's model" lens distortion correction formula.

    I have an OpenGL shader that performs the full Brown's model correction, but I have not tested it yet. I plan to use it on my Raspberry Pi (if I do not replace it with a cached displacement map first).
    Is it just Unity that doesn't have this "Brown's model" correction, or does the Oculus SDK lack this as well?

    My IPD is 55. I don't have my Rift yet, so I don't know what it will be like to use it, but I'd like to find out how to best compensate for the IPD mismatch.
    They use a subset of the Brown's model that leaves out the tangential distortion correction and the chromatic aberration correction, relying on only radial distortion correction (optimized for 64mm IPD) at this time.

    However, the main page of this website has an announcement that an "IPD calibration tool" will be provided in the future, so perhaps that tool generates the missing lens distortion correction coefficients, and the SDK will be updated to supply the missing terms to use them.

    But even with that software supplying improved lens distortion correction, only the shape and color of displayed objects will be improved. Any focusing errors from incorrect physical lens position for your IPD will remain. It will still be a good idea to supply optional replacement lens cups with various IPD selections (or better, adjustable IPD). And replacement cups should allow lens focus adjustments too, by changing their distance from the screen.

    In fact, with mechanically adjustable lenses, radial distortion correction alone would have been sufficient (as is commonly done for other adjustable lens applications).
  • RealaReala Posts: 7
    NerveGear
    Yea my IPD is 58 and I've not been impressed with any of the engine's correction solutions. I really hope they add (assuming it's even possible with this design) a physical lens adjustment on the retail release cause I suspect people with narrower or wider IPD's are at a significant handicap in comfort, usability, and effect. For me personally, unity games seem to lose almost all depth when I set them to 58mm (or at least Tuscany does, it looks full on 2D). Correcting in TF2 is incredibly uncomfortable after removing the HMD (presumably due to the mismatch with the lenses intended viewing angle, though that's pure conjecture)--to the point I have serious concerns about long term vision/focal damage. 64mm or just under seems to work best, though I suspect this discrepancy is a big contributor to motion discomfort, nausea, and headaches.
  • MarkMark Posts: 10
    NerveGear
    geekmaster wrote:
    They use a subset of the Brown's model that leaves out the tangential distortion correction and the chromatic aberration correction, relying on only radial distortion correction (optimized for 64mm IPD) at this time.

    However, the main page of this website has an announcement that an "IPD calibration tool" will be provided in the future, so perhaps that tool generates the missing lens distortion correction coefficients, and the SDK will be updated to supply the missing terms to use them.

    But even with that software supplying improved lens distortion correction, only the shape and color of displayed objects will be improved. Any focusing errors from incorrect physical lens position for your IPD will remain. It will still be a good idea to supply optional replacement lens cups with various IPD selections (or better, adjustable IPD). And replacement cups should allow lens focus adjustments too, by changing their distance from the screen.

    In fact, with mechanically adjustable lenses, radial distortion correction alone would have been sufficient (as is commonly done for other adjustable lens applications).
    After some searching, I ran across the thread you created on MTBS3D about custom lens cups.

    Do you plan on releasing these cups, when you create them? I would be very interested in them.

    And if I understand correctly, custom IPD eyecups would work with the current software correction techniques, since radial distortion correction would be all that is required?
Sign In or Register to comment.