biospud wrote:Is it possible you are seeing sprites rotated 45 degrees occasionally, based on the slightly different position of each eye?
That is a separate issue from this. It's to be the next bug report I submit about stereoscopic 3D features.
I would have liked to show off the sequential frame rendering more clearly by video editing some footage of it in action. However, both Fraps and Shadowplay (the only things that seem capable of capturing 3D game footage) only make 2D captures of GZDoom when it's using quad-buffered 3D, for some reason. And I lack external capture hardware, either in a passthrough sort of device or a high-speed camera that I can point at my computer monitor. So, I'll have to make do with some crude illustrations.
Consider this no-art-skills scene of a green ball moving left to right across some stripes at 120 Hz. The scene has no depth, but is being rendered in 3D anyway. (Much as HUD elements are, which is where this is most easily noticed in action.) Here's how the scene appears in 2D:
Frame 1
Frame 2
Frame 3
Frame 4
Frame 5
Frame 6
With the other 3D modes in GZDoom, the scene is rendered in much the same way. Two views are rendered for the same frame and superimposed onto the canvas simultaneously, and both eyes view the canvas at the same time, so both eyes naturally perceive the same scene:
Frame 1
Frame 2
Frame 3
Frame 4
Frame 5
Frame 6
But quad-buffered stereoscopic 3D is inherently different due to the shutter glasses technology. Two views are
not rendered for the same frame, two views are
never superimposed onto one canvas, and both eyes view the canvas at
different times. This is how GZDoom would currently render this scene:
Frame 1
Frame 2
Frame 3
Frame 4
Frame 5
Frame 6
Due to this, both eyes do not perceive the same scene. In action, this is extremely jarring, and frankly quite difficult to look at in scenes with fast motion. When you squash the frames together to create an effective 60 Hz scene, this becomes more obvious:
Frames 1 & 2
Frames 3 & 4
Frames 5 & 6
This looks very different from what the 3D anaglyph 60 Hz equivalent would be:
Frame 1
Frame 2
Frame 3
This is not proper practice for quad-buffered stereoscopy. With sequential frames, horizontal movement can be perceived at the wrong depth, and vertical movement becomes impossible to focus your eyes on properly.
This is what GZDoom should be doing:
Frame 1
Frame 2
Frame 3
Frame 4
Frame 5
Frame 6
Now, half of the frames are rendering an old version of the scene. But when the frames are squashed together, you can see both eyes now perceive the same scenes:
Frames 1 & 2
Frames 3 & 4
Frames 5 & 6
I hope this has been helpful.
[quote="biospud"]Is it possible you are seeing sprites rotated 45 degrees occasionally, based on the slightly different position of each eye?[/quote]That is a separate issue from this. It's to be the next bug report I submit about stereoscopic 3D features.
I would have liked to show off the sequential frame rendering more clearly by video editing some footage of it in action. However, both Fraps and Shadowplay (the only things that seem capable of capturing 3D game footage) only make 2D captures of GZDoom when it's using quad-buffered 3D, for some reason. And I lack external capture hardware, either in a passthrough sort of device or a high-speed camera that I can point at my computer monitor. So, I'll have to make do with some crude illustrations.
Consider this no-art-skills scene of a green ball moving left to right across some stripes at 120 Hz. The scene has no depth, but is being rendered in 3D anyway. (Much as HUD elements are, which is where this is most easily noticed in action.) Here's how the scene appears in 2D:
[b]Frame 1[/b]
[img]https://s6.postimg.org/du8p885e9/2d_1.png[/img]
[b]Frame 2[/b]
[img]https://s6.postimg.org/ottwjuiyp/2d_2.png[/img]
[b]Frame 3[/b]
[img]https://s6.postimg.org/gobulofa9/2d_3.png[/img]
[b]Frame 4[/b]
[img]https://s6.postimg.org/p6laq1go1/2d_4.png[/img]
[b]Frame 5[/b]
[img]https://s6.postimg.org/73s7ytd3l/2d_5.png[/img]
[b]Frame 6[/b]
[img]https://s6.postimg.org/73s7ytsj5/2d_6.png[/img]
With the other 3D modes in GZDoom, the scene is rendered in much the same way. Two views are rendered for the same frame and superimposed onto the canvas simultaneously, and both eyes view the canvas at the same time, so both eyes naturally perceive the same scene:
[b]Frame 1[/b]
[img]https://s6.postimg.org/la7yu18j5/anaglyph_1.png[/img]
[b]Frame 2[/b]
[img]https://s6.postimg.org/ane5on2yp/anaglyph_2.png[/img]
[b]Frame 3[/b]
[img]https://s6.postimg.org/lmzd0913l/anaglyph_3.png[/img]
[b]Frame 4[/b]
[img]https://s6.postimg.org/5oqna4u0x/anaglyph_4.png[/img]
[b]Frame 5[/b]
[img]https://s6.postimg.org/cf74jk1r5/anaglyph_5.png[/img]
[b]Frame 6[/b]
[img]https://s6.postimg.org/t2ymm248h/anaglyph_6.png[/img]
But quad-buffered stereoscopic 3D is inherently different due to the shutter glasses technology. Two views are [i]not[/i] rendered for the same frame, two views are [i]never[/i] superimposed onto one canvas, and both eyes view the canvas at [i]different[/i] times. This is how GZDoom would currently render this scene:
[b]Frame 1[/b]
[img]https://s6.postimg.org/8itsnn1cx/quad_separate_1.png[/img]
[b]Frame 2[/b]
[img]https://s6.postimg.org/gbkgfmf1t/quad_separate_2.png[/img]
[b]Frame 3[/b]
[img]https://s6.postimg.org/w9t65rgzl/quad_separate_3.png[/img]
[b]Frame 4[/b]
[img]https://s6.postimg.org/bpoc7a8y9/quad_separate_4.png[/img]
[b]Frame 5[/b]
[img]https://s6.postimg.org/6e9fmla0x/quad_separate_5.png[/img]
[b]Frame 6[/b]
[img]https://s6.postimg.org/7tb0bbqjl/quad_separate_6.png[/img]
Due to this, both eyes do not perceive the same scene. In action, this is extremely jarring, and frankly quite difficult to look at in scenes with fast motion. When you squash the frames together to create an effective 60 Hz scene, this becomes more obvious:
[b]Frames 1 & 2[/b]
[img]https://s6.postimg.org/s0og3lt5t/quad_squashed_1_2.png[/img]
[b]Frames 3 & 4[/b]
[img]https://s6.postimg.org/6r0tsrkkx/quad_squashed_3_4.png[/img]
[b]Frames 5 & 6[/b]
[img]https://s6.postimg.org/gobulu7m9/quad_squashed_5_6.png[/img]
This looks very different from what the 3D anaglyph 60 Hz equivalent would be:
[b]Frame 1[/b]
[img]https://s6.postimg.org/la7yu18j5/anaglyph_1.png[/img]
[b]Frame 2[/b]
[img]https://s6.postimg.org/lmzd0913l/anaglyph_3.png[/img]
[b]Frame 3[/b]
[img]https://s6.postimg.org/cf74jk1r5/anaglyph_5.png[/img]
This is not proper practice for quad-buffered stereoscopy. With sequential frames, horizontal movement can be perceived at the wrong depth, and vertical movement becomes impossible to focus your eyes on properly.
This is what GZDoom should be doing:
[b]Frame 1[/b]
[img]https://s6.postimg.org/bpoc77ocx/quad_proper_separate_1.png[/img]
[b]Frame 2[/b]
[img]https://s6.postimg.org/862ehf12p/quad_proper_separate_2.png[/img]
[b]Frame 3[/b]
[img]https://s6.postimg.org/b05juuvj5/quad_proper_separate_3.png[/img]
[b]Frame 4[/b]
[img]https://s6.postimg.org/n20xp0k75/quad_proper_separate_4.png[/img]
[b]Frame 5[/b]
[img]https://s6.postimg.org/pw432gu35/quad_proper_separate_5.png[/img]
[b]Frame 6[/b]
[img]https://s6.postimg.org/vkadtd65d/quad_proper_separate_6.png[/img]
Now, half of the frames are rendering an old version of the scene. But when the frames are squashed together, you can see both eyes now perceive the same scenes:
[b]Frames 1 & 2[/b]
[img]https://s6.postimg.org/862ehfvxt/quad_proper_squashed_1_2.png[/img]
[b]Frames 3 & 4[/b]
[img]https://s6.postimg.org/f9a9x2935/quad_proper_squashed_3_4.png[/img]
[b]Frames 5 & 6[/b]
[img]https://s6.postimg.org/6e9fmjs0h/quad_proper_squashed_5_6.png[/img]
I hope this has been helpful.