Experimental release based on GZDoom 4.6.0 and GLES branch

Sat May 22, 2021 10:12 am

https://github.com/drdteam/gzdoom-gles/ ... gles4.6.0b

This build is still very much experimental, but has the same features as GZDoom 4.6.0 (with some renderer features removed). This build will still require OpenGL 3.3 (for now) but may run smoother on older hardware. (Update: Apparently, OpenGL 3.3 is no longer required!)

To use the new renderer, you must set vid_preferbackend 3 or select it in the IWAD box, or pass -gles2_renderer on the command line.

Big shoutout to emile_b for his work on this!

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 10:48 am

Oh just seen this, thanks Rachael!

But wait there has been a change to the start up - to actually use the GLES2 path you now need to put "-gles2_renderer" on the command line, otherwise it will use the normal GL renderer.
The old versions just always used GLES2 by default. It may make sense to force it to use GLES2 for these builds?

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 10:51 am

Ooh, I didn't know it did this. I will update the OP. Yes, it will definitely make sense to force the builds to do this. I didn't know you had the renderer separation already that far along. Can it run the original OpenGL path completely unmodified, too, now? (i.e. would it be safe to merge this into GZDoom proper sometime in the future?)

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 10:55 am

Rachael wrote:Ooh, I didn't know it did this. I will update the OP. Yes, it will definitely make sense to force the builds to do this.


Great thanks, sorry I should have mentioned it in the other thread. I needed a way to use both GL renderers. 👍

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 10:55 am

emile_b wrote:Great thanks, sorry I should have mentioned it in the other thread. I needed a way to use both GL renderers. 👍

That is excellent, I am glad you found a way to do this.

I'll make some changes to the startup dialog in my copy of the branch to allow users to select the new backend. You are free to pull my changes when I am done, they will appear in the master branch of the repository I linked in the OP.

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 11:33 am

Awesome news! I'd love to test this out as soon as Rachael has updated the build to force GLES2 on default. Ill then test out how it will run on a Geforce 6150 IGP (OpenGL 2.1 support).

As lover of low end builds, This GZDoomGLES/GLESZDoom (Or ZDoomGLES? ;)) is something that, like most of drfrag's work, would be outside the scope of Graf's work on GZDoom and Raze, but has its benefits elsewhere and for mobile/embedded platforms.

Brilliant work here folks.

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 11:46 am

I've tried the GLES renderer on my phone, can confirm it's ultra fast. Without it, I only get 30 - 40 FPS average, but with GLES, I get 60 FPS locked. Highly recommended. :3
Last edited by Nash on Sat May 22, 2021 11:49 am, edited 1 time in total.

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 11:47 am

Nash wrote: ultra fast. from 30 - 40 FPS average


What we consider fast these days... :mrgreen:

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 11:48 am

What I mean is, without the GLES renderer, it's at an unplayable 30 - 40 FPS on the phone I tested it on. :P

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 12:07 pm

Great job. It works much better than LZ

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 12:19 pm

Alright, i couldn't let this slide so i just tested it with stock Doom 2 utilizing the commandline rendering option:
Testing:
Performance is definitely linear in scaling whilst utilizing CPU to the max. At 640x480 windowed, GZDoom GLES literally flies. I got between 60-75 FPS.
But if you increase resolution, performance takes an excepted nose dive. At 1024x768 windowed (Yes, i am a 4:3 guy!) i now was seeing 23-25 FPS. So my cut off point would be around 800x600 or for that 60 FPS adventure, 640x480 full screen.

In every case tested, CPU utilization is 100%, at which point in time the computer decides to take off to Mars. Ofcourse, not using the command line generates an error.

Bugs/Issues:
Obviously it has some glaring issues. Rocket explosions are clipped out through the floor. Dynamic lighting (Such as projectiles) does not display. Particles are not shown when projectiles are shot sideways. So in practice, GZDoom GLES looks like a ultra clean/sharp version of the old GLDoom port.

Conclusion:
I am honestly shocked by how performant it is. Even at low resolution, the game looks really clean but with all the benefits that GZDoom 4.x has. Over 60+ FPS on a Stonehenge PC means that old fart high end hardware that has OGL 2.x support only (Geforce 6800, Geforce 7800 series) and Radeon 9000/X800/X1000 series will absolutely fly with this and on higher resolutions. I'd love to see how such hardware (Geforce 6800, Geforce 7800/7900) or (Radeon 9800 Pro/X850 XT/X1900) will run GZDoom GLES at 1080p utilizing this.

Having said that, its a toss up between this and LZDoom. LZ, i found, does tend to play more balanced between CPU and GPU, for lack of a better word. LZDoom may never perform at 60 FPS, but it also does not utilize 100% of both CPU cores no matter what resolution. Nevertheless, GZDoom-GLES brings supersmooth GZDoom 4.6 to rigs outside the minimal required playset - it is not only running on my hardware, it is fully playable at high speed. :shock:

My specs:
CPU: Athlon X2 215 (Dual core)
GPU: Geforce 6150 SE IGP (OpenGL 2.1 compatible, GLSL 1.2 format, which is required by the GLES2 renderer.)
RAM: 3 GB DDR2

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 12:26 pm

I think the biggest takeaway here is that you are able to run new GZDoom mods and can expect mod-feature-parity with GZDoom, *just* with render differences. Of course, whether said mods hold up in terms of performance is dependent on a lot of other things outside the control of the engine, that goes without saying (whether said mods spam actors or use high res graphics, that stuff will obviously eat into the available performance headroom). But at least now, the engine is equal, at least on the gamecode side.

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 12:37 pm



On master branch now :)

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sat May 22, 2021 3:40 pm

Updated to 4.6.0a - this has the new launcher window with the OpenGLES option.

Re: Experimental release based on GZDoom 4.6.0 and GLES bran

Sun May 23, 2021 2:22 am

I noticed that in this version of the port, in OpenGL mode the FPS is higher than in the regular GZDoom4.6.0.
https://imgur.com/a/07JOzn1