Special Aircraft Service

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 26 27 28 [29] 30 31 32 ... 37   Go Down

Author Topic: A new era has come! Stereoscopic 3D (Development thread)  (Read 130130 times)

0 Members and 5 Guests are viewing this topic.

benitomuso

  • SAS Team
  • member
  • Offline Offline
  • Posts: 2587
  • P.A.L.
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #336 on: December 18, 2011, 12:24:29 PM »

Herra,
              yes, you have found the solution by yourself. That was the problem.

  In some way it is true what you say that the ReadMe doesn't specify it. The problem is that to cover in detail each possible global configuration of the typical packages / Modactivators and how to install in all of them, an apendix of at least 2 pages is required. So several things are assumed as already known by the user.

  It would be good for you to read how the JSGME operates. You could have achieved the same by placing the 00_PAL-Stereo3D folder in: JSGMEMODS\PALStereoMOD\MODS\00_PAL-Stereo3D. So it would copy to the MODS folder the 00_PAL-Stereo3D directory, that basically is the same you did by yourself. The "PALStereoMOD" is just the way it will be displayed in the list of the JSGME. My "TotalMODder" is more efficient in that sense, because auto-recognizes what kind of MOD you are adding. But as with anything, at the beginning it could demmand some effort to first set it operative.

  Regards,
                           Pablo
Logged

Herra Tohtori

  • Modder
  • member
  • Offline Offline
  • Posts: 671
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #337 on: December 18, 2011, 09:40:22 PM »

I'll keep that in mind, thanks for the explanation. I have a feeling I had learned that information at some point in the past, but had forgotten.

Here is a short youtube video of a bomber intercept mission I quickly put together, using the stereo mod..

I adjusted the width of the stereo view basically so that when FreeTrack was centered, the right eye positioned itself behind the gunsight - like it was designed to behave. And, who knew, the cockpit struts of the Bf-109 are not quite as thick when you peer past them with two eyes at the same time... makes it surprisingly lot easier to estimate lead on targets, and the depth perception aids in that too.

Can't wait to test how this affects fighter combat in online... ;)
Logged

benitomuso

  • SAS Team
  • member
  • Offline Offline
  • Posts: 2587
  • P.A.L.
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #338 on: December 19, 2011, 02:47:50 AM »

Yes Herra,
                  as you said, estimate distances is much easier with the Stereo MOD. You really have a much closer to reality perception in the cockpit.

  I invite you to post your video to populate the thread I have created for it:


  I saw your video, and perhaps you are using too much of a separation index for internal view to make it a general setting for eveybody. Perhaps a smaller index is more universal to share videos.

  BTW, have you used FRAPS to get that footage? It looks quite stable. But you probably noticed that the biggest problem is the "ghosting" that it produces, making the quality finally perceived in the video not so good. I haven't found any good method to avoid it.

  Regards,
                          Pablo
Logged

Herra Tohtori

  • Modder
  • member
  • Offline Offline
  • Posts: 671
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #339 on: December 19, 2011, 09:00:05 AM »

Yes, I use quite a bit of separation, but only an amount that I deem realistic. You're right that it doesn't look the best possible in the video, but it does make the cockpit feel quite realistic in-game. The german gunsight was meant to be used with right eye, so that's what I'm doing - although I don't know if you actually had to move your head to peer through it.

Anyway, I have a question. It's currently possible to adjust the distance between eye points, but there doesn't seem to be a control for the amount of frame separation, which can be used to adjust the amount of in/out feeling you get from objects appearing on the screen. It would be useful for being used on differently sized screens. I shall make an image to explain what I am talking about.

Here's an image about an imaginary scene with large paprikas in it. The white blobs are eyes, the white screen depicts the display distance.



Theoretically, a distant paprika (not on the image because it's distant) should appear on the display so that the left and right images are at the same distance as the viewer's eyes. That will mean when the viewer aligns the left and right image of the object, they're looking at it with parallel eyes. This basically gives an illusion that the object is at infinite distance.

An object closer to the viewer (in the middle)  and very close to viewer are also depicted, as well as imaginary "view rays" to the objects, and how the view rays intersect the display plane. That intersection is technically where the left and right images of said objects should appear.

This kind of setup is dependant on a few factors: Eye distance, and display distance. Increasing display distance will reduce the amount that viewers need to cross their eyes, which reduces the perceived distance of the object. For that reason, same setup that works well on a large, wall-mounted 50 inch television will probably not work quite as well if you are using a 23-inch display 50 centimetres from your face.

For the purposes of realistic 3D, it is therefore required to have an adjustment for the frame distance in addition to the eye width, so that left and right images can be moved left or right as required by the viewer:



As you can see from here, moving both frames "inward" has decreased the perceived distance of objects. For close objects, a "pop-up" effect (perceived distance less than distance to the display plane) is magnified.

Ideally, an object in the image that is at the same distance as the display plane should appear on the display so that left and right image are perfectly aligned. That means the viewer's perception of the object's distance is the same as the screen's. In context of aviation, it would likely be so that most of the cockpit surrounding the pilot is at this approximate distance when sitting in a fighter plane; some objects (such as gun sight) might be slightly closer, especially when leaning in, and those should "pop up" from the display, to give the illusion of being closer to the player than the display is.

Unfortunately in IL-2 the situation is further complicated by the existence of zoom, which pretty much means it's practically impossible to achive the "ideal" situation where the display is a "window" into a 3-d world that you peer through, at identical 1:1 distances and view angles as in real world. That would be very hard to achieve, and would require a fixed field of view dependant on the apparent diameter of the monitor, which is also dependant on player's distance from the display, which changes, so you'd have to track it with FreeTrack and make field of view adjust based on the apparent diameter of monitor as it appears to player... it is, I should say, fairly impossible (not to say pointless) to achieve THAT.

Thankfully, human depth perception is an extremely flexible system and takes to different situations like a fish in the water, the brain is so powerful it just shrugs at minor inconsistencies in the image and automagically fixes everything so that things typically start feeling natural, no matter what setting you use.

However, a frame distance adjustment would be of great help in adjusting the image to look good on a wide range of display sizes and distances.

I don't know if this is doable, though. Translating the rendered red/cyan frames left or right may not be easily achieveable. However, it could be possible to give the alternating eye points a slight angle, adjustable by the player in very small increments. Technically that should have the same effect as sliding the rendered frames left or right.


...Oh, and another question: What units is the eye distance adjustment in? Is it in relative units (1.0 being standard human eye distance) or absolute units such as centimetres? Absolute unit input would possibly be more accessible for users, although relative units have their advantages as well.
Logged

benitomuso

  • SAS Team
  • member
  • Offline Offline
  • Posts: 2587
  • P.A.L.
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #340 on: December 19, 2011, 03:31:59 PM »

Herra,
                 interesting subjects.

  First of all, the real world is based only in Parallel 3D Stereoscopy like this:



  Hyperstereo as on the image (where interocular distance is higher than normal) is artificial, but other methods including angle shifting are even more artificial.

  When you see through your eyes, considering you don't have any problem as strabismus, you see through two "cameras" which are aligned (the two look in the same direction) but shifted some distance between them. The focus is similar between them (we adjust quite the same our two eyes) and the focal length too. So the only difference at all, and the only "stereo perception" comes from the separation between eyes. The woman in the picture above will see in "hyperstereo" just because she has her "cameras" now more wide as the consequence of using binoculars.

  So I implemented parallel stereo composition keeping the FOV (field of view or the plane where everything is projected) as originally was in the game.

  What you depict in your second pic can be transformed into a combination of eye separation plus change of parallax (break the parallelism) of the two eyes. That can be achieved in game without much effort but it will demand more adjustment. Is true that by doing that "artificial trick" a longer stereo effect can be perceived (it gives you the chance of still having near 3D a little exagerated but still perceiving some difference in objects that otherwise would be perceived as being the same by the eye). The fact is that it is not the way we see.

  I made some experiences with parallax, specially because some members of the forum have strabismus, and a differential parallax could help them to perceive stereo. But I will resume that research in the future.

  Regarding what are the units of the Stereo Separation: they are quite ambiguos. Originally it was the interocular distance in cm. But later I realized that there is a scale which depends on your monitor and the FOV you are using that makes a distance in cm meaningless. So now it is kind of a relative real / screen eyes separation distance.

  Regards,
                       Pablo
Logged

Herra Tohtori

  • Modder
  • member
  • Offline Offline
  • Posts: 671
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #341 on: December 19, 2011, 06:51:09 PM »

I agree that case specific parametres such as display's apparent diameter in viewer position, as well as FOV setting in the game, have significant effect on things and it will never be uniformly "correct" with how reality looks.

The reason I requested for a way to adjust the image separation angle (in addition to eye point separation adjustment) is that the game, quite rightly, assumes only one line of sight, and as it extends into direction X, it'll hit a distant target - say, a mountain top.

Now that we switch view point five or six centimetres to left or right, but keep the view vector absolutely same, the view vector will also translate parallel to original vector, but the end result is that the same mountain top is drawn on exact same location on the display. This happens with all objects that are at optical infinity, but especially the reflection sight image (which is by definition an object at optical infinity).

This means that the furthest object can only be as far as your display; you don't get a real "sense of distance" that you would get by looking out of a window, or cockpit of an aircraft.

This causes a problem with all the rest of the objects, because they now want to "pop out" of the image, as their perceived distance is interpreted by the viewer to be closer than the display surface.

What I am suggesting here is a way to return objects to optical infinity, or at least push distant objects further away than the display. And the way I propose doing this is to nudge left eye view's direction (not position) slightly to the right, and right eye point's direction slightly to the left. What this should cause is a slight separation of objects at optical infinity, and this will make viewer perceive an object to be "in-depth" - as in, further away, than the display's distance.

Let me demonstrate what I mean by a manually done stereo image of a Bf-109 cockpit*:



Notice if you focus on the clouds or the fuel tanks to the left, you are actually looking further than your display's distance. I used quite a small amount of view angle separation here, so the difference is subtle - but you should be able to see it.

What I did here is simple - I disabled all other axes in FreeTrack except sideways movement and yaw, then moved view point to right eye position and looked slightly to the left (to shift the image correspondingly to the right), and then moved to left eye point (approximated) and looked slightly to the right (to move resulting image's relative position to the left).

The result is, when you look at distant objects, your eyes end up looking at more parallel directions, and this makes it feel more like looking into long distance rather than half a metre distance to your screen. Not only should this increase the feeling of "open air" that the depth gives, but it should also reduce eye strain.

That's why I would love to see an additional adjustment like this in the mod.

Regarding the eye separation units: I can understand why arbitrary units are used. However I would still prefer an option where I can manually adjust the eye point distance in game world units to correspond the separation of my own eyes, or at least translate arbitrary units to absolute units via conversion scale. I don't think it's meaningless at all, considering certain planes had their gun sights specifically offset to work well with human stereo vision; I am of course speaking of axis planes, mostly Bf-109 and FW-190. Since they were designed for humans, it would make sense to set eye point difference to match the real distance of human eyes, or at least be able to.

Approximation works as well, but I'd like to be certain of it.

Finally, I should say I hope you don't take these posts of mine as complaints. I am thrilled at the release of this mod, and I want to thank you for all the work you've done on it. But, I think the addition of eye angle adjustment could improve the mod regarding the depth perception of objects. :)


*Here are the source screenshots for the stereo image:

https://www.sas1946.rocks/images/imageshit/dead/dead.gif
https://www.sas1946.rocks/images/imageshit/dead/dead.gif

It's a simple RGB channel separation where I just substituted the right eye screen shot's red channel with the corresponding channel of the left eye screenshot.
Logged

PhoenixOrion

  • member
  • Offline Offline
  • Posts: 29
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #342 on: December 19, 2011, 10:19:55 PM »

As someone who plays on a 3d tv an has iz3d and tridef. I noticed you have settings for seperation but nothing for convergence will there be a setting for convergence with that we should be able to fine tune the seperated stereo image so it appears as on without the ghosting and loss of 3d.
Logged

benitomuso

  • SAS Team
  • member
  • Offline Offline
  • Posts: 2587
  • P.A.L.
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #343 on: December 20, 2011, 08:31:31 AM »

Phoenix,
                       basically that's the same topic we were discussing with Herra Tohtori. Due to this discussion I will implement convergence. It is quite straightforward, but it will not be easy to make a setting for adjusting it in flight, there are no more alternatives of what to do with the mouse to adjust it, so it will require a Conf.ini specific value. Probably I will implement it as a differential pair of values (convergence angle for left and right eyes) so strabic people can take profit of the feature. For typical use, the two values should be set identical.

  Regards,
                         Pablo
Logged

shardana

  • member
  • Online Online
  • Posts: 850
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #344 on: December 20, 2011, 11:51:37 AM »

Phoenix,
                       Probably I will implement it as a differential pair of values (convergence angle for left and right eyes) so strabic people can take profit of the feature. For typical use, the two values should be set identical.

  Regards,
                         Pablo

Well if you manage that Pablo....... spechless...........................
shardana
Logged

Herra Tohtori

  • Modder
  • member
  • Offline Offline
  • Posts: 671
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #345 on: December 20, 2011, 01:09:57 PM »

Phoenix,
                       basically that's the same topic we were discussing with Herra Tohtori. Due to this discussion I will implement convergence. It is quite straightforward, but it will not be easy to make a setting for adjusting it in flight, there are no more alternatives of what to do with the mouse to adjust it, so it will require a Conf.ini specific value. Probably I will implement it as a differential pair of values (convergence angle for left and right eyes) so strabic people can take profit of the feature. For typical use, the two values should be set identical.

  Regards,
                         Pablo

Thank you! It probably does not need to be adjustable with the mouse, as long as we can input a straight angle value in degrees for the eye convergence, we can play around with different values and find a value that produces good results.

I think a single value, in degrees, should be sufficient as an adjustment. Like you said, the eye angles should be symmetric, so there's no reason to specifically adjust left and right eye angles separately, I think.

As far as nomenclature goes, I was thinking naming the tables values would probably make the most sense this way:



Giving the angle a positive value will turn the eye normal vectors inward. This should cause perceived distance of objects in the game to increase*, hence positive value.

Correspondingly, negative value will turn eye points slightly outward, which will cause perceived distance of objects in the game to decrease.

At neutral/null value, the eye points will have parallel in-game direction, which will cause the most distant objects be at the same perceived distance as the display apparatus.

Values should be given in either radians or degrees, although degrees are more accessible to the majority, radians would probably mean one step

In other words I'm using Z axis value with "forward" being positive, and "backward" being negative. Negative adjustment will possibly be useful for people who play with a large display or projector screen, and want to bring the objects "closer" to them. Positive adjustment, I expect, will be useful for majority of users who play the game on a computer screen with rather short distance between eyes and projector.

I can't wait to experiment with this! :)



*This might sound counter-intuitive, but this is one of those things where you have to think backwards to go forwards. Turning YOUR eyes inward (or, crossing them) will make you perceive things closer than they are. But, when we're effectively slightly crossing the game character's eyes, that means YOU don't need to cross your eyes so much, and you will perceive objects to be further away as the combined end result!
Logged

santobr

  • Modder
  • member
  • Offline Offline
  • Posts: 1349
  • Senta a Pua!
    • F
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #346 on: December 20, 2011, 06:08:37 PM »

I have the red/cyan glasses and I will buy the TriOviz Inficolor glasses to play xBox games.
They are the best option for 2D monitors,  full and pleasant natural colors, no ghosts and no chromatic aberration effect.
Unfortunately, it's a proprietary technology, I think it's not for us modders. :'( :P



santobr.
Logged

benitomuso

  • SAS Team
  • member
  • Offline Offline
  • Posts: 2587
  • P.A.L.
Re: A new era has come! Stereoscopic 3D (Development thread)
« Reply #347 on: December 20, 2011, 09:04:53 PM »

  Finally I implemented Convergence effect and you can get nice things with it. Consider this attachment as a Beta, but it is fully operative.

  Now we have two extra parameters in Conf.ini

[Mods]
PAL3DConvLeft=0.0
PAL3DConvRight=0.0

  These are degrees and you have to consider that the real convergence is the addition of both values. For me values of -0.15 resulted excellent. Default is 0.0 (Parallel stereoscopy). I still don't know why I work with negative values. The angle basically is the angle towards the center, so it should be positive. Normally you will have to use Deparation values (mainly for internal) lesser than before.

  Playing with Separation and Convergence nice things come to the screen, usually with a much deeper and comfortable Stereo sempsation.

  To adjust in flight the Convergence value I only found this solution:

  -When the game starts, the MOD will be in the Stereo MOD you use and adjusting separation (now much more precise) but basically the standard response.

  -Disable Stereo with Left + Right buttons and the wheel until you reach Mode 0. If you release the buttons and you hold the right while going Up or Down you will be able to switch if you adjust Separation or Convergence.

  -So leaving Convergence adjustment in disabled Stereo, you go back to any Stereo Mode and then you will be able to adjust Convergence by holding the left and moving the wheel just as formerly you used to adjust Separation.

  Herra, I like very much your graphics. Could you make just a planar (from the top of the head) view of the two eyes depicting the interocular distance (what we call here separation) as a messure in the graphic and the two eyes pointing forward with two inner angles (I mean towards the other eye) respectively named ConvLeft and ConvRight? It would be very nice to clarify things and if you agree we can add it to the ReadMe of the MOD.

  Regards,
                         Pablo
Logged
Pages: 1 ... 26 27 28 [29] 30 31 32 ... 37   Go Up
 

Page created in 0.036 seconds with 26 queries.