cmbruns / gz3doom

Classic Doom/Heretic/Hexen games in stereo 3D and VR; modified version of gzdoom.
http://rotatingpenguin.com/gz3doom/
88 stars 16 forks source link

Multiple guns in Rift mode #138

Open vgf89 opened 8 years ago

vgf89 commented 8 years ago

The top half of a gun is visible at the bottom of each view, and on the mirror window. It doesn't track, it's just stuck to the screen. The Hud's gun shows up fine and tracks properly. Happens in both DOOM.wad and freedoom.wad, with and without Brutal Doom, so I assume it's an engine bug and not at all related to some specific wad/pk3 file

This guy's image is the same problem I get. : https://www.reddit.com/r/oculus/comments/4f3vi2/new_bugfix_release_of_gz3doom_for_cv1/d26gpfe

I'm running an AMD R9 390 on the latest drivers (16.5.3), an Oculus Rift CV1, and this release of GZ3DOOM: https://github.com/cmbruns/gz3doom/releases/tag/GZ3Doom1.8.10_e

cmbruns-hhmi commented 8 years ago

This seems to be a duplicate of issue #117 This new report strengthens my suspicion that this is specific to AMD video cards, which makes this difficult for me to test.

cmbruns-hhmi commented 8 years ago

@vgf89 Thanks for the issue report. If you take a radiation suit effect (type "idbeholdr" during gameplay), do both weapons take on the green color? How is each weapon image affected by each of the other "idbehold" effects? http://doom.wikia.com/wiki/Doom_cheat_codes (r, i v, l, s). If you have the ability and time, could you please post some screen shots here in a comment on this thread?

picklefart9 commented 8 years ago

I know it's super old at this point but just noticing this issue thread. I have the same problem too. AMD R9 390x.

The extra gun goes away with biohazard and steroids, stays with the others. All take on the color of invulnerability, invisibility, and night vision. See the attached screenshots. GZ3Doom Screenshots.zip

cmbruns-hhmi commented 8 years ago

@picklefart9 Thanks for the screen shots. These are very interesting. Again, this seems to be an issue that affects AMD graphics boards, perhaps particularly R9 390/390x cards. It appears that the weapon doubling is consistent through all the "idbehold" modes. What are "biohazard" and "steroids"? Can you provide links? I notice that the lower/wrong weapon has a slightly different aspect ratio, causing me to suspect that the weapon image appears in the "blend" pass, which is responsible for the radiation, berserk, and certain other screen coloring effects.

picklefart9 commented 8 years ago

Those different terms are just because I was using freedoom for the screenshots. In freedoom when typing idbehold, a different prompt shows up than in doom2: v=invuln, s=steroids, i=invis, r=hazard, a=map, l=night vision

The weapon doubling goes away with idbeholdr and idbeholds, and comes back when they're toggled off. As vgf89 says, the screenshot shows one gun but in the Rift, you see it at the bottom center of both eyes. They don't converge so you see three guns in total.

cmbruns-hhmi commented 8 years ago

Ahh! OK. Thanks for clearing this up for me. Now I understand that whenever there is an actual blend effect, such as radiation/hazard/green or steroids/berzerk/red, the second unwanted weapon image does NOT appear. It so happens that I use the same framebuffer to pre-draw the weapon, and to pre-draw the blend effect. So what seems to be happening is that this framebuffer is not being cleared between the weapon pass and the blend pass, unless the blend pass actually does something. And the failure to clear only happens on AMD boards. I still don't have a machine to actually test this problem on, but I now have a much sharper view of where to look in the code for tactics that might help this problem.

cmbruns-hhmi commented 8 years ago

In particular this call to bindAndClearHudTexture() does not seems to be living up to its name: https://github.com/cmbruns/gz3doom/blob/htc_vive/src/gl/scene/gl_stereo3d.cpp#L804

forkoz commented 7 years ago

Pistol in project brutality is doubled in a similar fashion but the lower gun is transparent. I have R9 280x, other guns are fine so far. Also kicks and slashes don't show up. Maybe its related to the PB/BD wad.