Notgames Forum
November 23, 2024, 09:22:15 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
 
   Home   Help Search Calendar Login Register  
Pages: [1]
  Print  
Author Topic: "field of view"  (Read 49198 times)
Mick P.

Posts: 69


View Profile WWW
« on: September 12, 2015, 01:23:28 AM »

Has anyone ever thought about this? This thing called "field of view".

Really it's angle of view or focal length in cameras. I noticed the other day that the image in the software I work with is very distorted. I've been noticing it for a while, actually, or how there seemed to be an absurd amount of parallax in the perspective, where things sore up into the air, or down below, but not even to great heights.

I've thought this is funny, and I'm embarrassed that I've been working with 3D software for what feels like many lifetimes without taking notice. But it wasn't until I began to see actual distortions, like ripples, and then I began to see them everywhere I looked...


Part of me wonders if this is because of my other post of late where I discovered an aliasing free 3D display technique. So I've been seeing 3D images devoid of jagged edges, and I've been spending a lot of time just lost in the images, because they're miraculous. But I wonder if being bombarded by so many jagged edges everywhere has a way of diffusing the senses, so you do not notice the ripples and distortions of this thing called "FOV".


What's even more interesting about this subject, is from what I've read, in computer games, conventional wisdom about "FOV", what is the right settings and so on, seems very misplaced to me upon examination.

It's hard to tell what numbers mean what. The software I've inherited uses a 50 degree vertical field of view. I would describe this as very distorted. About as much so as could possibly be acceptable. Other places I read 90 degrees is recommended. Valve's Source Engine website says its default is 75 degrees. But even though I think vertical "FOV" is almost universally used, I get the impression that if anyone is using 90 it must be either a horizontal or diagonal measurement.

I briefly tried using 90 but scaled by the reciprocal of the aspect ratio, and I couldn't tell the difference from 50 degrees on my system, even though it would depend on the aspect ratio.


Supposedly a high value is recommended on computer games. For PCs. I'm not sure why, but some reasons are given as it is better suited for sitting close to a smaller screen, and it is supposed to be better for people who feel motion sickness, but I'm skeptical of that, I wouldn't be surprised if the distortions could be causing the sickness in many cases.


What I do know is if you lower the value, perhaps to what is used on consoles, but I doubt it truly, although I wonder why I've never played a console game with a preference to control this... if you lower it, the distortions go away, and to me the scene begins to look like a movie. In fact on Valve's Source Engine website it suggests using a low setting and long shots for trailers to give them a movie like feel, but out of the other side of its mouth it says that players do not notice the distortion. I'm very skeptical of this...


From what I can see players seem to be using this setting to give themselves play advantages, because a greater field of view means that you can see more of your surroundings. And also this makes them feel more secure, when virtual combat and threats can come from anywhere. Being able to see less, means your targets can more easily go where you cannot see them, and so on.

So I just want to share this, because I worry about conventional wisdom's way of creating defaults, that we do, never knowing there is an other way.


This setting is how games zoom in to use gun scopes and things. So when it is lowered, it can feel like you are zooming in, but this is truly a matter of context. You wouldn't know that you are zooming in if you were always zoomed in. The problem itself really boils down to vision being circular and screens being flat. Our displays must pick a spot to map to the orb, like flat polygons that form a sphere. I really like the intimacy of the "zoomed in" image...

When you come face to face with a character, they fill the entire screen, you really feel like you are in their presence, and not orbiting around them from a distance that can never be crossed. And of course, there is no warping or towering things that close in on themselves as if to kiss, or like two staves lowered by guards blocking your path. I think subconsciously this distortion like jagged edges separates the video game realm from the cinematic.


When the setting is lowered, it can keep you from seeing things above and below, if there is a limit on looking up and down. I think this might be why some games use black bars to even this out. But I found that for a range of 30 to 50 (30 or 35 I recommend) to allow the lower settings to see the same amount as 50 the position of the view can be pulled back a little ways. Not being able to see as much means that the game doesn't have to display as many things, so you can see your frame rate improve by significant figures.

Code:
if(SOM::zoom<50) //back up so you can see above and below
{
//20: this is just 50-30 covering the zoom modes in full
//4: works surprisingly well for 1.5m tall player character

assert(SOM::zoom>=30);
float up = fabsf(SOM::pov[1])/4;
float back[3] = {SOM::pov[0],0,SOM::pov[2]};
Somvector::map(back).unit<3>().se_scale<3>(float(50-SOM::zoom)/20*up);
pos.move<3>(back);
}

In this code "pov" is the normalized view vector. So its vertical component is used to scale the push back vector, and its horizontal components are renormalized and scaled by the simple linear formula.


PS: In the code, it should really be pos.remove<3>(back); except it is operating on the translation component of the scene's view matrix, so it is inverted.


EDITED: float up = powf(fabsf(SOM::pov[1]),1.5f)/4; smooths out the code so it isn't camel humpy. For homework you can do first-person avatar body parts. I find with absurdly widescreen/matted settings I don't see distortion, but I'm sure it's there. I'll probably see it eventually. But it's cool to go really widescreen because you can frame the whole NPC on one side, and put whole blocks of spoken subtitles beside them out of the way.
« Last Edit: September 12, 2015, 03:14:43 PM by Mick P. » Logged

Kjell

Posts: 129


View Profile
« Reply #1 on: September 12, 2015, 02:45:40 PM »

The area that your monitor occupies in your physical view usually doesn't correspond with the virtual projection. For instance, if you have a screen that is 45cm high ( comparable to a 27 inch iMac ) and your eyes are 62cm away from the screen, the virtual field of view should be 40 degrees ( vertically ).



In order to ensure a matching field of view you could use head tracking, as demonstrated in this video. Unfortunately this technology never caught on ( VR to the rescue? ).

Fortunately humans are pretty good at reinterpreting ( moving ) pictures that don't correspond with their natural field of view. We've been conditioned by looking at print & TV ( shot using various lenses & zoom-levels ) from various angles & distances, so our brains ( usually ) deal with it sans problème.

Maybe you've been sitting in front of your monitor for too long? Wink
Logged
Mick P.

Posts: 69


View Profile WWW
« Reply #2 on: September 12, 2015, 03:30:06 PM »

Maybe you've been sitting in front of your monitor for too long? Wink

No, the distortion is a well documented problem and it is very extreme distortion. It happens because if you draw a circle around the head in your graphic and expand it until the top and bottom of the display touch at two points on the edge of the circle, the display isn't curved so it causes distortion. And then if you increase the angle beyond what is recommended, which is conventional wisdom, then the distortion really ramps up.

I don't notice the distortion too much horizontally, but vertically it is like vertigo, and a tower for example if you look up at it, as you do it will lean inward towards the center of the screen like the Leaning Tower of Pisa, but more so. And if you look up and down along a towering statue, or anything really, its shape will ripple and swim. So yes, maybe you don't notice it if you are not paying attention, but if you ever do notice it, you might have a hard time NOT noticing from thereon on. Especially the leaning tower effect is extreme and impossible not to notice.


AS for your VR parenthetical, I actually came here to remove my addendum that was hopeful about VR being of help. Intuitively it seems like it would be, but I realized that if the recommendation is to use larger angles the closer you are to the screen, then the logical extension of that is if the display is right in your face then you'd need a really large angle then, that would be worse than a hall of mirrors effect. This might explain why they want to use distortion shaders to prepare the image for special lenses in the new VR kits. OR this could just be the ultimate proof of the failure of this logic. Small angles make you feel like you are much closer to things, which seems like what you'd want with a VR headset.


PS: As for matching up the display in the graphic. I really don't think that's what people want, as you allude to. Treating your display like a window sounds good in theory, and that seems often said to explain why console games tend to use smaller angles (perhaps more so traditionally) because they make assumptions about television arrangements, but I'm skeptical of that. But yeah, at the end of the day your display can only show a small section of the video world, so the question you have to ask, is what are the pros and cons here. And what I'm trying to say is there are a lot of cons involved with the default assumption for PC games, and that most of the pros have to do with beating the game, instead of esthetic considerations. It's possible we shouldn't even be making action/fighting games because the technology really isn't there for doing that yet.

EDITED: If people are interested in this subject and not already well versed in it, I will prepare some screenshots to illustrate the differences.
« Last Edit: September 12, 2015, 03:37:11 PM by Mick P. » Logged

Kjell

Posts: 129


View Profile
« Reply #3 on: September 12, 2015, 03:45:05 PM »

No, the distortion is a well documented problem and it is very extreme distortion. It happens because if you draw a circle around the head in your graphic and expand it until the top and bottom of the display touch at two points on the edge of the circle, the display isn't curved so it causes distortion.

Ah, that. You could counter that using warped fragment sampling ( just like VR ). But you'd still need head tracking to determine the curvature accurately.
Logged
Mick P.

Posts: 69


View Profile WWW
« Reply #4 on: September 14, 2015, 02:16:39 AM »

I posted something and then removed it after I realized that the ideal ratio I'd found experimentally was 3:2. But although 2:1 is unacceptable, I still basically find 1.75:1 to be fine as long as the vertical is a hard 30 degrees. After doing the math for 1080 you end up with 1890x1080, which is virtually 1920x1080 (16:9.) So at hard 30 you squeak right in.


PS: I should put back that for the record I don't believe this can be cancelled or corrected on a flat screen (without introducing new problems; I'd expect curved lines or links of vertices that curl.)
« Last Edit: September 14, 2015, 02:27:36 AM by Mick P. » Logged

Mick P.

Posts: 69


View Profile WWW
« Reply #5 on: September 14, 2015, 03:42:36 AM »

There is an interesting phenomenon that seems like more distortion to me, but the more I think about it, the more I think it must have more to do with the vestibular system being out of sync. It may be useful to distinguish between the two if so.

Basically IRL when you look up and down [I guess it's just part of how up is always up (relative to gravity I guess)] you see the lines that are moving because of perspective as staying put, but if you really pay attention (and maybe it helps to wear glasses) you can see that they are changing by a great degree. I don't think this happens at all in games, and probably doesn't happen with movies either if so. I wonder if it happens with VR or not. It seems like it WOULD since up remains up, which is also true for a monitor, but with head tracking the picture is in sync with your head, so it seems like it should work (and might even feel a little eerie at first.)


PS: For me the net result of this effect is it doesn't feel like perspective is changing as much as your view is just panning in 2D across a panorama. That is that's how it feels IRL, because you're always renegotiating up, so you don't see the relative changes of edges along the way.
« Last Edit: September 14, 2015, 03:46:22 AM by Mick P. » Logged

Mick P.

Posts: 69


View Profile WWW
« Reply #6 on: September 14, 2015, 11:26:42 PM »

Funny,

Here (https://youtu.be/Y2gTSjoEExc?t=2m50s) is an illustration of what I'm trying to describe in Reply #5 (just above) THAT I just happened to watch today/the next day! It's so weird it seems like cookies are tracking everything I do, but no, just cosmic weirdness.


EDITED: For the record I still can't tell how much of my uneasiness is this versus probable distortion. I've tried doing experiments outdoors and the video game still feels off. What I'm playing with is the same thing more or less, except looking up and down, which feels far less intuitive...

Okay, here is a disappointing answer. I find that if I use a view angle that is say 10 or so, this final distortion goes away, and it looks realistic. The only problem is this is unplayable, and almost feels like an orthographic projection. It's disappointing. It feels like the projection matrix method is either flawed, pick your poison, or maybe using a flat screen is flawed and only an infinitely small angle is correct. I know photographs can appear distorted depending on the lenses but they don't seem to be so treacherous as this. I'm so disappointed with these results, I wonder if there are alternatives...


EDITED: https://en.wikipedia.org/wiki/Perspective_projection_distortion#Mathematical_description

There is a table here that shows this relationship. Funnily it goes to 10 degrees where distortion is fairly minimal as I described. I wonder why looking up and down along poles brings out the distortion so acutely for me. I will be very happy if VR remedies this. Oh well, ignorance was bliss (on the bright side, VR is just around the corner. I really hope it does the trick.)

"It is important to notice that a change of 10% in an object´s dimension is clearly perceivable at first sight, as it is the overall distortion with a 60° visual angle or the maximum punctual distortion with a 50° visual angle. To avoid this excessive distortion, the visual angle of the observer should be always under 40°, and the closer it is to 30°, the better."
« Last Edit: September 15, 2015, 01:02:11 AM by Mick P. » Logged

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2008, Simple Machines Valid XHTML 1.0! Valid CSS!