Moonmarch
Posts: 150
Joined: Thu Mar 07, 2019 1:34 am

Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Thu Aug 29, 2019 2:58 am

This guide will include explanations from my previous QZDoom build guide, the guide will show you how to run Ultimate Doom using the QZDoom program, here is a link to the QZDoom build guide:

Compile QZDoom:
https://www.raspberrypi.org/forums/view ... 8&t=238908

QZDoom is not available on the zdoom.org website QZDoom is still in active development here is a link to the QZDoom website:

https://qzdoom.drdteam.org/

This guide will only include how to build GZDoom v3.82 Legacy which is compatible with OpenGL 2 graphics processors the latest releases of GZDoom requires OpenGL 3 or OpenGL 4, here is a link to the zdoom website:

https://zdoom.org/index

Here is a link to all of the dependencies you will need to compile GZDoom:
https://zdoom.org/wiki/Compile_ZDoom_on_Linux

Under the Install dependencies section copy then install the dependencies that are listed under the Debian/Ubuntu category using the terminal, after installing the dependencies download the GZDoom 3.82 source code in the terminal write:

Code: Select all

wget https://zdoom.org/files/gzdoom/src/gzdoom-src-g3.8.2_legacy.zip
To extract the contents of the gzdoom-src-g3.8.2_legacy.zip file:

Code: Select all

unzip gzdoom-src-g3.8.2_legacy.zip
After extracting the contents access the gzdoom-g3.8.2_legacy directory:

Code: Select all

cd gzdoom-g3.8.2_legacy
To compile the GZDoom source code:

Code: Select all

cmake .

Code: Select all

make -j2
You can use "sudo make -j4" to compile faster this can cause your computer to freeze or overheat, because the computer will always be at 100% utilization, using "make" or "make -j2" will take longer to compile the source code, this is safer to use, compiling the source code will require at least 30 minutes. After compiling the source code, copy and paste "doom.wad" or other IWAD file into the GZDoom directory, then open the terminal to run the GZDoom program:

Code: Select all

./gzdoom
If you compiled the LZDoom source which is the same as GZDoom 3.82 you would need to run the LZDoom program:

Code: Select all

./lzdoom
If you do not have a retail copy of any Doom engine game that includes a .wad file you can download open source Freedoom that is available for free here is a link to the Freedoom website:

https://freedoom.github.io/about.html

To download the Freedoom .wad files open the terminal:

Code: Select all

wget https://github.com/freedoom/freedoom/releases/download/v0.11.3/freedoom-0.11.3.zip

Code: Select all

unzip freedoom-0.11.3.zip
Brutal Wolfenstein 3D is a Doom II mod that is compatible with freedoom2.wad, place a copy of the freedoom2.wad file in the gzdoom-g3.8.2_legacy directory:

Code: Select all

cd freedoom-0.11.3

Code: Select all

cp freedoom2.wad /home/pi/gzdoom-g3.8.2_legacy
To download the Brutal Wolfenstein 3D mod here is a link to the Brutal Wolfenstein 3D download page on the moddb.com website:

https://www.moddb.com/mods/brutal-wolfe ... ng-for-v50

To open the BW-V4.5_Waiting_For_V50.zip file:

Code: Select all

cd Downloads

Code: Select all

unzip BW-V4.5_Waiting_For_V50.zip
After running the gzdoom program at least one time check the terminal to see if any .pk3 files were loaded, if files are not loading then edit the gzdoom.ini file located in the /home/pi/.config/gzdoom hidden directory, to edit the gzdoom.ini file open the terminal:

Code: Select all

cd /home/pi/.config/gzdoom

Code: Select all

nano gzdoom.ini
To load the Brutal Wolfenstein 3D mod you need to include the location of the .pk3 file under the autoload category in gzdoom.ini, if you are using the freedoom2.wad file include the BW-V4.5_Waiting_For_V50.pk3.pk3 location under freedoom phase 2 autoload:

[doom.freedoom.phase2.Autoload]
Path=/home/pi/Downloads/BW-V4.5_Waiting_For_V50.pk3

To improve frame rates run Brutal Wolfenstein 3D with the opengl renderer instead of using doom software renderer, Brutal Wolfenstein 3D Final has graphic glitches if you use opengl renderer, you can run Brutal Wolfenstein 3D Final using software renderer the game will run slow, Brutal Wolfenstein 3D v3.0 runs the fastest at higher resolutions using the OpenGL renderer.

Interested in running the original Wolfenstein 3D using a source port here is a link to a guide on how to compile ECWolf:

ECWolf Wolfenstein 3D Linux source port with mods:
https://www.raspberrypi.org/forums/view ... 8&t=243310

Update September 1st 2019:
-Miscellaneous improvements
Last edited by Moonmarch on Sat Aug 31, 2019 7:39 am, edited 1 time in total.


Moonmarch
Posts: 150
Joined: Thu Mar 07, 2019 1:34 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Fri Aug 30, 2019 8:14 am

Are you sure the problem is OpenGL that would mean you don't have the same problem with software renderer, you are using the DOOM.WAD which means you are either playing Ultimate Doom or running a Doom 1993 mod, the guide I wrote only mentions how to run the Brutal Wolfenstein 3D mod which is a Doom II mod, if you intend to play Ultimate Doom then try using the QZDooom guide that I wrote which includes how to enable dynamic lights, the dynamic lights are not activated by default, because dynamic lights can reduce your frame rates significantly.

If you are running GZDoom in window mode see if there are any error messages in the terminal you can always use the Freedoom wad files to see if the problem continues.

MamiyaOtaru
Posts: 15
Joined: Fri Aug 02, 2019 9:42 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Fri Aug 30, 2019 9:10 pm

I do not have that issue in software mode. In opengl mode I do have it with lzdoom, gzdoom-legazy, qzdoom etc. Anything using opengl2. I have it with actual doom, freedoom, and brutal wolfenstein.

So I'd like to ask again: can you confirm that you in fact do not have that issue when using opengl? And if not, would you be willing to share your binary? I would like to narrow down whether it is something specific to how I compiled it, or if it is my hardware, or the packages I have installed or what.

Moonmarch
Posts: 150
Joined: Thu Mar 07, 2019 1:34 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Sat Aug 31, 2019 7:59 am

Have I seen this problem before well running certain Doom mods using GZDoom om the RPI computer can cause various problems with graphics, not all mods will be compatible with GZDoom running on the RPI computer I tried to run WolfenDoom Blade of Agony the mod was unplayable, because of low frame rates wasn't able to test the mod, with Brutal Wolfenstein 3D Final using OpenGL some of the graphics were missing, and I had problems with segmentation faults which caused GZDoom to crash.

Have I seen weird graphics with using GZDoom, loading several mods from different mods at the same time can cause the game to be unplayable which includes problems with graphics, I assumed you were only running Ultimate Doom which would only have 1 .pk3 file which would be DOOM.PK3, which means mods would not interfere with Ultimate Doom unless you added parameters to the gzdoom.ini file.

Are you using the RPI4 computer or different RPI computer all RPI computers before RPI4 used the same GPU VideoCore IV, RPI4 uses VideoCore VI which can have different graphic drivers, because the RPI4 GPU supports OpenGL 3 you could try to compile the latest version of GZDoom instead of GZDoom 3.82 to see if the problem continues.

MamiyaOtaru
Posts: 15
Joined: Fri Aug 02, 2019 9:42 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Wed Sep 04, 2019 2:47 pm

All my attempts have been on the pi 4. The latest gzdoom source won't compile as the pi 4 does not have the needed opengl support (pi 4 does up to opengl 2.1). So a qzdoom or gzdoom legacy build is necessary. And yeah it is with no mods (though it also happens with mods).

I'm happy to keep answering every little detail, but I am still curious to hear you say whether you get those menu glitches in opengl mode or not, and if not, again could you share your binary? I'd like to narrow this down.

jdonald
Posts: 415
Joined: Fri Nov 03, 2017 4:36 pm

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Wed Sep 04, 2019 4:20 pm

+1 to sharing binaries with all such tutorials, especially when there are unresolved bugs to narrow down.
MamiyaOtaru wrote:
Wed Sep 04, 2019 2:47 pm
The latest gzdoom source won't compile as the pi 4 does not have the needed opengl support (pi 4 does up to opengl 2.1).
Pi 4 Buster supports OpenGL 3.3 in software mode, so how could this prevent it from compiling? Or you meant it compiles but won't run with GPU rendering?

Haven't tried any of this myself. (I might if someone provides binaries!)

Moonmarch
Posts: 150
Joined: Thu Mar 07, 2019 1:34 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Fri Sep 06, 2019 8:53 am

To solve this OpenGL situation which involves anyone who is using the RPI4 computer, you will need to overclock the computer the computer is not fast enough at the current speeds to run GZDoom I'm only joking around, when I first compiled QZDoom that was in April I was using the RPI3B+ with Raspbian Stretch which means I was using the GZDoom engine for months, and I did not have any problems with graphics here is a example of a Doom source port running the Brutal Doom mod:

Image

Running GZDoom on the RPI computer should not be any different in comparison to the Windows PC version except slower frame rates, if you need a binary to run on your computer here is a link to a .deb package from the zdoom website:

https://zdoom.org/files/gzdoom/bin/gzdo ... _armhf.deb

NovaCoder
Posts: 10
Joined: Mon May 29, 2017 11:37 pm

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Sun Sep 08, 2019 2:08 am

Moonmarch wrote:
Thu Aug 29, 2019 2:58 am
This guide will include explanations from my previous QZDoom build guide, the guide will show you how to run Ultimate Doom using the QZDoom program, here is a link to the QZDoom build guide:

Update September 1st 2019:
-Miscellaneous improvements

Great, thanks for that guide :mrgreen:

It runs well on my pi 3b+

PrDoom+ was a bit slow, this runs much better (running at 1280x720 fullscreen).

Is there any gcc compiler options to try and improve performance specifically for a 3b+?

Moonmarch
Posts: 150
Joined: Thu Mar 07, 2019 1:34 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Sun Sep 08, 2019 8:08 am

I didn't include compiler optimizations for compatibility reasons I'm surprised anyone noticed, here is a guide that you can use as a reference to determine which compiler flags to include in the Makefile:

GCC compiler optimization for ARM-based systems:
https://gist.github.com/fm4dd/c66321793 ... c81b0aa845

I'm not actually sure how to add the compiler flags myself I have tried before didn't see increased frame rates, run this command during the cmake command:

Code: Select all

CFLAGS="-O2 -mcpu=cortex-a53 -mfloat-abi=hard -mfpu=neon-fp-armv8 -mneon-for-64bits" CXXFLAGS="-O2 -mcpu=cortex-a53 -mfloat-abi=hard -mfpu=neon-fp-armv8 -mneon-for-64bits" cmake .

NovaCoder
Posts: 10
Joined: Mon May 29, 2017 11:37 pm

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Mon Sep 09, 2019 4:50 am

Great thanks for that, I'll give it a try :D

crony1
Posts: 1
Joined: Mon Sep 16, 2019 8:34 pm

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Mon Sep 16, 2019 8:39 pm

I get these same glitches on a Pi 4 when using hardware acceleration. Software rendering is fine.

Moonmarch
Posts: 150
Joined: Thu Mar 07, 2019 1:34 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Wed Sep 18, 2019 12:57 am

This moral dilemma involving the RPI4 and OpenGL if I had a RPI4 in front of me I would search for answers to the problem the answer can be very complicated the best approach to solving this problem is waiting for graphic driver updates to be uploaded to the Debian/Rapbian repository if you are using Raspbian, you can always consider taking your entire operating system apart to install drivers you compiled yourself from various websites, then later on you find out all of the software you installed manually is available on the repository if all the software is available then GZDoom would be able to use OpenGL acceleration without graphic errors.

With Doom software renderer enabled in GZDoom the game will run slow at the lowest settings I wouldn't say the mod is unplayable if you were only interested in playing Doom or Doom 2 you can always use a different Doom engine source port that uses OpenGL or use DOSBox here is a link to a list of Doom engine source ports:

Comparison of source ports:
https://doomwiki.org/wiki/Comparison_of_source_ports

MamiyaOtaru
Posts: 15
Joined: Fri Aug 02, 2019 9:42 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Fri Oct 04, 2019 7:31 am

Moonmarch wrote:
Wed Sep 18, 2019 12:57 am
the best approach to solving this problem is waiting for graphic driver updates to be uploaded to the Debian/Rapbian repository
this does seem to have worked. The bugs I posted about earlier disappeared after the updates in September (raspbian Buster, pi 4). Thanks for your thread! Got everything working, with opengl renderer

Moonmarch
Posts: 150
Joined: Thu Mar 07, 2019 1:34 am

Re: Brutal Wolfenstein 3D and GZDoom 3.82 Legacy Doom Engine Source port Linux

Fri Oct 04, 2019 11:11 pm

That is great news I knew this day would happen I did see a update for the Mesa drivers in September I didn't see any threads about the Mesa drivers on the RPI General Discussions forum page, and assumed there were no improvements to the graphic drivers now you can actually overclock your GPU to see improved performance with OpenGL renderer, if you are using software renderer overclocking the CPU would improve frame rates, the RPI4 should be 3 times faster in comparison to the RPI3b+ which I would say runs Doom or Doom mods at acceptable frame rates at 720P window mode the RPI4 the possibilities are all over the place.

For some reason using Full screen mode lowers frame rates on my computer considerably lowering the screen resolution did not improve performance at all either, didn't have this problem with Raspbian Stretch full screen mode would cause the computer to freeze once in a while overall the frame rate was near identical to window mode, which needs to be solved.

Return to “Gaming”