-1
\$\begingroup\$

I understand about camera's and projections etc, such that we have distortion and zooming when at the sides of the screen (exacerbated on 21:9 monitors), however a few years ago, in a Unity forum thread, someone explained that it's entirely possible to fix this, it's just that games devs have to do a different projection matrix - and most don't because they're lazy or don't think to.

However I can't recall where I saw this, or the name the author gave it - but it worked by breaking up the view into vertical planes / slices and rendering each flat.

Does anyone know what I'm talking about and can help me nail this down to some gfx paper or dev page as I need to implement this.

Thanks

\$\endgroup\$
  • \$\begingroup\$ Check here: forum.unity.com/threads/edge-distortion-on-camera.174454 \$\endgroup\$ – Happy Hour Coding Apr 8 at 15:29
  • 1
    \$\begingroup\$ "because they're lazy or don't think to" is not the reason that most games use standard linear projection. The reason is that the distortion you're observing is actually the mathematically correct result for a viewer sitting close to your screen (the stretching of the on-screen shape exactly compensates for the foreshortening of the screen itself, like an anamorphic illusion) — if it looks wrong from your viewing position, then you're using an FoV too large for your actual viewing conditions. If you want to keep this FoV and apply other mappings to change the look, that's a stylistic choice. \$\endgroup\$ – DMGregory Apr 8 at 15:46
  • \$\begingroup\$ I know why it's happening, and with Ultrawide monitors everywhere and so cheap, this old projection model is obsolete. I've discovered something called 'Panini' projection and a great video on youtube showing how easy it is to adapt any game to fix these issues. youtube.com/watch?v=Qf5hyl3b_Tg \$\endgroup\$ – iOSProgrammingIsFun Apr 8 at 17:19
  • \$\begingroup\$ Or this: decarpentier.nl/lens-distortion \$\endgroup\$ – iOSProgrammingIsFun Apr 8 at 17:23
0
\$\begingroup\$

It's very rare for games to implement this, as aspect ratios people use rarely cause this problem, and even if it does, lowering the FOV when stretching is too distracting, can solve the problem.

However, there are groups who like having multiple screens side by side when playin, for instance with simulators (racing and planes), because it's just more realistic to rotate your head than to use some other way to look around. For this reason, many racing games implement a feature, where side views are rendered from a different camera angle. However, it's very hard to set this up correctly, as you need to know the curvature of the screen to get accurate rendering.

Unity has this feature built-in with Multi-display

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.