GZDoom 3.7.0 Released

News about ZDoom, its child ports, or any closely related projects.
[ZDoom Home] [Documentation (Wiki)] [Official News] [Downloads] [Discord]
[🔎 Google This Site]

Moderator: GZDoom Developers

User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49056
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

GZDoom 3.7.0 Released

Post by Graf Zahl »

Notice: This release has been split into two. There is now a "modern" version and a "vintage" version, for older hardware. More info can be found here.

Please note that the survey is currently closed. GZDoom 3.7.0 does not include the survey code that 3.5.0 did.


Download (Modern, OpenGL 3.3 and higher) Download (Vintage, OpenGL 2.x) UDMF changes - important for editor authors!
  • Expand UDMF and ZScript API for side's own additive colors
  • Add 'useowncoloradd_{top,mid,bottom}' sidedef properties to the UDMF spec
  • Please be aware there are also now UDMF fields for destructible geometry. (implementation details here)


Highlights
  • Completely revamped textures system, allowing for more future extensibility and rework, also fixes a few issues
  • add support for scaled textures in the software renderer
  • Untranslated fonts now appear as truecolor
  • Improvements to Doom64 colouring
  • Add NOFRICTION and NOFRICTIONBOUNCE flags
  • declared Actor's Morph() and UnMorph() functions virtual
  • scale factor is now applied to all scaling modes
  • add vanilla lightmode that behaves exactly as Doom's original light did
  • Cheat-enforced CVARs can now be changed in normal single player games without sv_cheats
  • Added a JIT compiler for DECORATE and ZScript which should allow some maps and mods to perform slightly, if not significantly faster in some cases 64 bit only!
  • scriptified the AltHUD
  • Many bug fixes as usual
  • Lights are now referenced by sections rather than surface, to speed up light linking. This should allow a dynamically-lit plasma bolt to pass over a 3D bridge in Frozen Time without turning the game into a slide show.
  • Many scriptifications from native code to ZScript
  • Add shader cache for Intel GPU's which should result in faster startups (especially on Windows) - first startup will still be slower, though
  • Added IsPointInMap(Vector3 p).
  • Added destructible geometry, exported to ZScript
  • Added a function to get the actor's age in ticks.
  • Added a new field to the Actor class which stores the amount of ticks passed since the game started on the moment the actor was spawned.
  • Added a function to the Actor class to get its spawn time relative to the current level.
  • Added spawn time information to the output of the "info" console command.
  • Export AllClasses
  • Update GME up to 0.6.2 version
  • changed the way alpha works on DrawLine and DrawThickLine so they're consistent
  • GL renderer is now partly multi-threaded, resulting in a 10-20% speedup, depending on a map's complexity.
  • add "neutral" gender option and better obit formatting


Details
Spoiler: This list is pretty big...
Last edited by Graf Zahl on Thu Dec 27, 2018 2:58 pm, edited 2 times in total.
User avatar
Rachael
Posts: 13530
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her
Contact:

Re: GZDoom 3.7.0 Released

Post by Rachael »

The release build is available, but it will be some time before I can fill this topic out with the details. For now, enjoy the new release!
User avatar
Marisa the Magician
Posts: 3886
Joined: Fri Feb 08, 2008 9:15 am
Preferred Pronouns: She/Her
Operating System Version (Optional): (btw I use) Arch
Graphics Processor: nVidia with Vulkan support
Location: Vigo, Galicia
Contact:

Re: GZDoom 3.7.0 Released

Post by Marisa the Magician »

Finally we can check for out of bounds in ZScript!
User avatar
Enjay
 
 
Posts: 26517
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland
Contact:

Re: GZDoom 3.7.0 Released

Post by Enjay »

Thank you to Graf and all the other developers for their continued work on GZDoom and for taking it from strength to strength.
User avatar
Rachael
Posts: 13530
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her
Contact:

Re: GZDoom 3.7.0 Released

Post by Rachael »

By the way, it may be at least until tomorrow before the Vintage build comes out. I am not at liberty to explain the situation surrounding that, my apologies, but it's a bit serious.

And on that note, this will likely be the last major release for the Vintage build. I know you get tired of us parroting "upgrade! upgrade! upgrade!" but more and more older systems are becoming increasingly difficult to support. Holding on to ye olde chugger isn't going to matter a whole hell of a lot when people are doing crazy things with their sparkling hot rods. In the future, if it's not happening already, expect more and more mods to simply not even run on these systems anymore, no matter what support we try to offer for them.
User avatar
Matt
Posts: 9696
Joined: Sun Jan 04, 2004 5:37 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Debian Bullseye
Location: Gotham City SAR, Wyld-Lands of the Lotus People, Dominionist PetroConfederacy of Saudi Canadia
Contact:

Re: GZDoom 3.7.0 Released

Post by Matt »

Excellent! Time for some singular theys and weapon flags and whatnot!
Rachael wrote:Holding on to ye olde chugger isn't going to matter a whole hell of a lot
Being one of those people who don't upgrade things for years and years, I find one of the major blockers is this sense of committing a terrible waste discarding equipment that isn't actually broken, no matter how obsolete it is for what I need it for. Does anyone have any good suggestions on how to start looking for places to get stuff recycled properly? (I have a drop-off place I can go to myself but I don't need to at this time)
User avatar
Rachael
Posts: 13530
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her
Contact:

Re: GZDoom 3.7.0 Released

Post by Rachael »

If someone can pick up where drfrag left off - I am sure we can continue offering support - but the divide between the vintage branch and the current branch is only increasing as time goes on, and with 3 major refactors since 3.6.0 that's going to become harder to maintain.

In fact, THIS branch we're currently releasing on will probably become a vintage branch, too, the moment Vulkan becomes fully implemented.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49056
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: GZDoom 3.7.0 Released

Post by Graf Zahl »

I think that's not very likely. The main problem with GL 3 hardware is not one of compatibility of features but one of some missing convenience features that complicate the handling of render data a bit - the main drawback is that this costs performance on that old hardware, not that it makes the implementation barely compatible. With GL 2 gone I was able to separate much of the low level code so that it can just remain there, once a better backend is available.
User avatar
Dark Pulse
Posts: 66
Joined: Fri Nov 21, 2014 5:35 pm
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support

Re: GZDoom 3.7.0 Released

Post by Dark Pulse »

Considering that the GPUs that support OpenGL 3.3 are a full ten-plus years old now (GeForce 8/Radeon HD 2000, so we're talking 2007), I don't think it's a bad thing to really drop support for those 2.X cards. Even the on-CPU IGPs of recent CPUs will support OpenGL 3.3 fine for the most part.

Definitely would say that it'd be a good idea to keep OpenGL as an alternate backend even once you guys got Vulkan rendering, though - that might be some pretty extended support there though.
User avatar
Rachael
Posts: 13530
Joined: Tue Jan 13, 2004 1:31 pm
Preferred Pronouns: She/Her
Contact:

Re: GZDoom 3.7.0 Released

Post by Rachael »

Sorry for the delay with the change log. Over 900 commits had to be processed for it - it's not exactly the smallest I've ever done.

There are probably matter things there that don't matter to people and probably things I should've left in but that I cut. If you want to deal with this monster - have at it.
Attachments
gzdoom-3.7.0-commitlog.zip
(78.66 KiB) Downloaded 185 times
User avatar
MartinHowe
Posts: 2022
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom
Contact:

Re: GZDoom 3.7.0 Released

Post by MartinHowe »

Enjay wrote:Thank you to Graf and all the other developers for their continued work on GZDoom and for taking it from strength to strength.
Yes, totally agree. (G)ZDoom has been one of the reasons this 25 year old game still exists :D
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49056
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: GZDoom 3.7.0 Released

Post by Graf Zahl »

Dark Pulse wrote:Considering that the GPUs that support OpenGL 3.3 are a full ten-plus years old now (GeForce 8/Radeon HD 2000, so we're talking 2007), I don't think it's a bad thing to really drop support for those 2.X cards.
Actually, the GPUs we are talking about are Intel's GMA chips from 2010. They are another magnitude worse than those real GL 2 cards. Unfortunately a lot of them was sold to unsuspecting customers back in the day when GL2 had long been obsolete. Those old real GL 2 hardware only makes up one quarter of all 600 out of 30000+ reports from the last survey. And a significant chunk of those roughly 150 people is running a GL 3 card on an old driver. - they could use the modern build if they just updated their graphics driver!

All that said, Even the Geforce 8600 I had from 2007 - 2012 started to have problems on more demanding maps. MAP09 from Hellcore (Hobbs End Horror) was unplayable, for example, my current system runs this with 150+ fps! These users on even older hardware won't be able to play a medium sized Boom maps at semi-decent frame rates
User avatar
Dark Pulse
Posts: 66
Joined: Fri Nov 21, 2014 5:35 pm
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support

Re: GZDoom 3.7.0 Released

Post by Dark Pulse »

Graf Zahl wrote:Actually, the GPUs we are talking about are Intel's GMA chips from 2010. They are another magnitude worse than those real GL 2 cards. Unfortunately a lot of them was sold to unsuspecting customers back in the day when GL2 had long been obsolete. Those old real GL 2 hardware only makes up one quarter of all 600 out of 30000+ reports from the last survey. And a significant chunk of those roughly 150 people is running a GL 3 card on an old driver. - they could use the modern build if they just updated their graphics driver!

All that said, Even the Geforce 8600 I had from 2007 - 2012 started to have problems on more demanding maps. MAP09 from Hellcore (Hobbs End Horror) was unplayable, for example, my current system runs this with 150+ fps! These users on even older hardware won't be able to play a medium sized Boom maps at semi-decent frame rates
Hmm, nominally you could deal with that by doing a check for the graphics driver vendor, I think, but in practice that's probably more of a pain in the ass than it's worth (or you would have done that), not to mention that even if you just selectively weeded out the GMAs, there's still the real problem that actual OpenGL2-only cards would inevitably become the weakest link in the not-too-distant future, not to mention that according to you, even older GL 3.3 cards are starting to strain.

Me, I know I'm CPU limited since I'm on a CPU from 2011. (I would've had an upgrade now, but events in my life have scuttled that for the next few years probably.) Vulkan is actually probably thus my best way to get a framerate boost, but eventually I know this system needs to go and a whole new one up in its place.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49056
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: GZDoom 3.7.0 Released

Post by Graf Zahl »

The problem with GL 2 is not primarily the performance but that these cards have very poor shader support and simply miss many features the modern renderer depends on. Trying to support these while moving forward is simply not possible. It's either old or new, but not both.

GL 3.3 is the baseline feature set that can properly handle all current features with the exception of shadow maps. Newer hardware adds features that allow some optimizations, but it isn't like GL 2, where the lack of features meant that the render path couldn't be modernized at all.
Vulkan is actually probably thus my best way to get a framerate boost, but eventually I know this system needs to go and a whole new one up in its place.
Don't expect any miracles from Vulkan. It cannot overcome the main problem of the renderer, i.e. that major parts of it need to be run in sequence. The entire renderer has two barriers where each side can run independently of each other. I was able to multithread one of these barriers, the second one will be a lot harder. In OpenGL it can only be done by using GL 4.5 features plus one extension.
And it's this second barrier where Vulkan would come in and allow more efficient handling - but even so, this won't result in a magical speed up but more likely increase performance by 15-20% at best, maybe.

That's really the limit with how Doom levels are being processed by the renderer.
BFeely
Posts: 44
Joined: Thu Mar 11, 2004 3:58 pm
Graphics Processor: nVidia with Vulkan support
Contact:

Re: GZDoom 3.7.0 Released

Post by BFeely »

If GL 3.3 is good enough to run a Modern build (assuming SSE2 isn't needed in the CPU) then "ye olde chugger" could get a GeForce GS 8400, PCI model to get that support.

P.S. I just got around to updating GZDoom today and already a new build comes out...
Post Reply

Return to “ZDoom (and related) News”