Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Mr. Duk

Software vs. OpenGL rendering question

Recommended Posts

I like to use both software and OpenGL rendering depending on the WAD, but I've noticed some clipping errors that are unique to each, and I wonder, is there a best of both worlds?

 

With the software renderer, a lot of times I'll see quick "pops" of textures. For example, in E1M1, you can see it with the posts in the first room to the left (with the sergeants and the button to open the wall). In SIGIL, you can see it plenty of times, like in E5M7 near the beginning with the hanging body through the floor. I'll often see vertical lines in WADs (and Sigil) around 'Hell cracks' and those sorts of things. It's less bad in vanilla Doom/Doom2/Final Doom but still there.

 

With the OpenGL renderer, all of this goes away. However, then you get clipping errors with the monsters. No matter what options you choose (such as Never, Always, Smart or Smarter), you're always going to see clipping problems with the monsters that you don't see with the software renderer. An easy example is Barons of Hell or Revenants in tight hallways. The extended arms of Arch-viles are another good example.

 

Is there any way to replicate the look of the monsters with the software renderer while using (and keeping) all of the other features of OpenGL? Does any of this make sense? Is this real life?

Share this post


Link to post

Well, in Doom 3 BFG Edition (as far as I know) it creates the frame using software rendering and then transforming it to OpenGL texture for display.

Plus there are many ports which have fixed the vertical lines (slime trails) using software rendering.

Share this post


Link to post

Interesting. I’ve never played Doom 3 BFG Edition. I’ll have to check that out.

 

I typically use GZDoom (or Zandronum), zDoom and Crispy. I have run the software renderer through GZDoom and it does indeed fix some of those ‘slime trails’, but for whatever reason on my old-ish computer it runs significantly slower than zDoom or Zandronum (which itself is essentially just an older GZDoom). I’ll typically take performance over graphics. I know zDoom is dead but I still feel I get the best bang for my buck with it, unless I need mouselook for Brutal Doom or something. I usually play with the mouse, but without the ability to look up and down.

 

My ideal world would be OpenGL rendering without the monster clipping problems, if such a thing exists. They need an “Old School” setting rather than Smart, Smarter, etc.

Share this post


Link to post
9 hours ago, Mr. Duk said:

Is there any way to replicate the look of the monsters with the software renderer while using (and keeping) all of the other features of OpenGL?

Correct software-accurate sprite clipping in a hardware renderer is possible, as shown here in Strife: Veteran Edition. However, it is seemingly unlikely Kaiser's method here would be applied to GZDoom due to its apparent performance inefficiency and likely other non-trivial matters. Until someone comes up with and implements some other method, the answer to your question regarding sprite clipping in GZDoom or any hardware renderer for that matter is "nyet".

Share this post


Link to post

Alright, thanks for the replies. That Strife link is exactly what I’m talking about, so thanks for posting that here.

 

This is of course not end of the world stuff, it’s very minor, but it always annoys me when I see a monster that is half clipping through a wall. I guess immersion breaking is the term? Plutonia has a bunch of examples of this if you play it with OpenGL rendering, with Revenants half cut off in several tight corridors. The floating monsters always have issues too. It’s obviously much less noticeable in levels with a lot of wide open space.

 

Ironically I prefer SIGIL with hardware rendering partly because there are no Revenants or Arch-Viles to get cut off, and the Cybers are mostly in large wide open areas.

Share this post


Link to post
3 hours ago, Revenant100 said:

Correct software-accurate sprite clipping in a hardware renderer is possible, as shown here in Strife: Veteran Edition. However, it is seemingly unlikely Kaiser's method here would be applied to GZDoom due to its apparent performance inefficiency and likely other non-trivial matters.

 

It's not so much the performance inefficiencies but the impact on scene rendering overall that makes the method problematic. If it was done that way, 3D floors would not be possible, for example, and several postprocessing effects would cease to work because they need a properly set up depth buffer, which is precisely what Strife VE avoids to draw the sprites with proper software clipping.

 

Share this post


Link to post
17 hours ago, MadGuy said:

Well, in Doom 3 BFG Edition (as far as I know) it creates the frame using software rendering and then transforming it to OpenGL texture for display.

Chocolate Doom does exactly this too. If you want to really know why, you can set "force_software_renderer 1" in chocolate-doom.cfg and watch as your high-end PC struggles to draw the game in something like 3840x2160, while hardware acceleration works fine :D

 

This option does exist for certain kinds of OSes and hardware where accelerated graphics are not available or the drivers are buggy, and it may actually be reasonable to use it in low resolutions.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×