Lime-3DS-Emulator icon indicating copy to clipboard operation
Lime-3DS-Emulator copied to clipboard

Add Side By Side Full stereo setting + Swap Eyes setting

Open DavidRGriswold opened this issue 6 months ago • 3 comments

This PR removes the Reverse Side By Side stereo layout that was added recently and replaces it with a Side By Side Full setting that generates a full-width side by side layout rather than a half-width one. In order to keep the functionality of the reverse side by side option available, it also adds a boolean setting for swapping eyes, which will apply to any rendering option, matching how Dolphin does it since these settings are often compared by users.

Here is a screenshot of the most common use case for this - full width side by side stereo layout with the eyes swapped. If you cross your eyes at it like a Magic Eye, you should be able to see the image in full 3d in the center (might be best opening the screenshot in a separate tab)

SEGA 3D Classics Collection_27 08 24_12 10 58 75

Tasks to complete this

  • [x] Add the settings as described above
  • [x] Implement the functionality of these settings
  • Test the functionality of the new settings and options
    • [x] Test all layouts with side by side full on both swapped and not swapped eyes on desktop (vulkan)
    • [x] Test screenshot functionality (vulkan)
    • [ ] Test screenshot functionality (openGL)
    • [ ] Test all layouts with side by side full on both swapped and not swapped eyes on desktop (openGL)
    • [x] Test swap eye setting with traditional side by side in all layouts on desktop (vulkan)
    • [ ] same as above with openGL
    • [x] Test portrait and landscape layouts on android with both settings on both vulkan and opengl
    • [ ] Test anaglyph and interlaced with and without swap to make sure nothing broke, on both vulkan and opengl
    • [ ] Test CardboardVR on android to make sure it still works as expected
  • [x] edit desktop GUI to rename "Reverse Side by Side" to "Side By Side Full"
  • [x] edit android GUI same as above
  • [x] add checkbox/toggle to desktop UI
  • [x] add checkbox/toggle to android GUI

DavidRGriswold avatar Aug 27 '24 14:08 DavidRGriswold