A mod-side way to force sector lighting mode

Moderator: GZDoom Developers

Axensus

A mod-side way to force sector lighting mode

Post by Axensus »

I have this mod here: https://gitlab.com/accensi/daynight-cycle. It changes sector light dynamically based on an internal clock. Here's my aching problem: ever since control over the lighting modes was shoved entirely into the hands of the mappers, both the players and modders got thrown under the bus (hey, what happened to that "players first" approach I keep hearing about?)
Sarcasm side, due to the linear workings of the internal clock and mostly how light works IRL, none of the available options look even remotely good. In fact they look absolutely fucking awful. The one that did was Standard because it's linear. What I'm asking for is some gameinfo option or whatever to force a specific light mode across all maps. Obviously someone loading a mod that completely changes both skies and sector lighting does not care in the slightest about "mapper intent", so that argument is inapplicable. The gameinfo option is a middle ground between the user option and no good options at all because it's explicit in its intent and can be used by mods that actually NEED it. Please, do the right thing and give the tools back instead of trying to hide them away in the closet.
dpJudas
 
 
Posts: 3134
Joined: Sat May 28, 2016 1:01 pm

Re: A mod-side way to force sector lighting mode

Post by dpJudas »

I can only speak for myself on this matter. There is seemingly no consensus on this subject. If you want an answer to what GZDoom is willing to do here you need a reply from Graf.

Anyhow, my point of view on all of this is that I strongly believe that engine always should only offer one light mode to the user: software. Why? Because I've seen again and again and again users write to me asking about looks, only for me to discover they don't really understand at all what they are choosing between with regard to those light modes. Last time this happened to me was yesterday: here a user reported a "bug" that Software/Vanilla was using a bigger "player lamp radius" than Classic. Its classic that is wrong compared to all other source ports. Even just explaining this to the person gets frustratingly complex.

The only common theme I've noticed among users is that some of them don't like the "player lamp effect", so if anything, I'd prefer to have an option turning that specific detail on and off (effectively this would mean two light modes, but not presented as named light modes).

As for modders and mappers my stance is different. Once you load a mod or map then you've already adopted a deviation from the original artistic vision and as such I have no problem with any of them overriding it with whatever light mode they fancy. Given a similar thread on DW this is where my point of view seem to deviate from other ZDoom developers.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: A mod-side way to force sector lighting mode

Post by yum13241 »

strongly believe that engine always should only offer one light mode to the user: software
You're going to need a fallback for people who's hardware doesn't support a new enough GLSL, or people who are on OpenGLES. That's all Classic is for anyway. Vanilla sounds it should be more accurate, but it's 1 light step too dark.
As for modders and mappers my stance is different
A guy making weapons mods (like me) has no business changing your lightmode.
Axensus

Re: A mod-side way to force sector lighting mode

Post by Axensus »

At least one person has complained to me in private that the current light modes are basically "dark", "darker", "can't see shit, captain". I personally don't have this problem, but I can see where he's coming from. This has got to be one of the worst anti-user pro-literally-nobody changes to this engine in many years that I simply can't find a way to defend. Hell, I can't even find a way to cope with it because there are no alternatives to help cope with. Other than using older versions of the engine, which I'm sure Graf just loves hearing about. I agree with dpJudas that, sure, one light mode IN THE OPTIONS is definitely the way to go because it's far less confusing, but the way it currently is screws EVERYONE for virtually no gain just to appease the mythical audience of the remaining five GZDoom mappers who probably don't even know of this page's existence: https://zdoom.org/wiki/MAPINFO_options_ ... L_renderer

>A guy making weapons mods (like me) has no business changing your lightmode.
I don't know if you've noticed the mod link I conveniently put in the OP, but not everyone is making weapon mods, and I have every business changing the lightmode if the available ones all look like absolute dogshit for what I'm trying to achieve. That's the whole point of working with an extremely moddable engine.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: A mod-side way to force sector lighting mode

Post by yum13241 »

and I have every business changing the lightmode if the available ones all look like absolute dogshit for what I'm trying to achieve
People can override it anyway by setting gl_maplightmode to negative 1. If you aren't making a map, then you have no business forcing lightmodes, potentially overriding another map's lightmode. (If I make a map that only looks good in "Software", and I set it in MAPINFO, you have no business changing it to "Build", which had a bug where you could get infinite fullbright by disabling fog.)

You can also recommend people to set gl_maplightmode to what you think suits your mod. You can also use this viewtopic.php?t=78354, which does that for you. (Feel free to use it in your mod as long as it's also GPL-3.0-or-later. That's a legal obligation.)
dpJudas
 
 
Posts: 3134
Joined: Sat May 28, 2016 1:01 pm

Re: A mod-side way to force sector lighting mode

Post by dpJudas »

yum13241 wrote: Sun Aug 25, 2024 12:39 pm You're going to need a fallback for people who's hardware doesn't support a new enough GLSL, or people who are on OpenGLES.
All OpenGL 3+ and OpenGL ES 2+ hardware supports all of them. Software is plenty fast for any hardware the last 10-15 years. I'd like to remind you, at this point in time, even Vulkan 1.0 is very old (8 years). Whatever performance argument Classic had isn't really relevant anymore unless you're targeting hardware from before teenagers were born.
Professor Hastig
Posts: 255
Joined: Mon Jan 09, 2023 2:02 am
Graphics Processor: nVidia (Modern GZDoom)

Re: A mod-side way to force sector lighting mode

Post by Professor Hastig »

The main issue here is not features - the main reason for keeping the old light mode is that it is considerably cheaper on hardware resources which on low end GPUs can mean better frame rates. I have an old laptop for testing where on some maps this means 60 vs 50 fps. As long as the engine intends to support all GL 3.x hardware this is needed.

Furthermore, seeing how hostile the reaction to the light mode change was, I suspect that doing this final step will antagonize a lot more people than hiding the non-traditional light modes.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: A mod-side way to force sector lighting mode

Post by yum13241 »

dpJudas wrote: Whatever performance argument Classic had isn't really relevant anymore unless you're targeting hardware from before teenagers were born.
Mind you, I have a laptop that came with Windows 8 (not 8.1!) right next to the one I'm typing this from that maxes out at OpenGL 3.3. And Vanilla isn't exhibiting the bug that's expected on OpenGLES, in fact it looks just like Software, which is clearly falling back to something (I believe the old "Doom" mode), since basically all shaders are disabled on GLES AFAIK, which I can confirm since launching GZDoom in Vulkan makes the other modes look like we know they should look.

I find Professor Hastig's post agreeable. In fact, that same 2012-ish laptop is technically supported by GZDoom, but like I said, running GLES (screen wipe chugs on anything else), it basically only has 2 options misrepresented as 3: Software (old "Doom"), Vanilla (also old "Doom"), and Classic (old "Standard").

No one complained about Vanilla Doom's lighting, and now people here act like it sucks because it wasn't fullbright (talking to you, Build light mode with fog off!)


The entire CONCEPT of "lightmodes" only exists because people couldn't replicate the original Doom lighting in OpenGL. By the time it was figured out, we had this mess. We had OpenGL-standard lighting, that but brighter, fake Doom, fake Doom with no lamp, Build gimmick, actual Doom but too dark, and actual Doom branded incorrectly. If you really know what your're talking about, you'll know what I mean.

Axensus is probably lamenting "Standard" (hint, it's the first one) because it was a copy+paste of the default OpenGL light formula, and he/she/they/it/whatever doesn't like the "player lamp" effect, even though it was in vanilla Doom so you could see stuff close to you, and still looks good today. Better than Classic, which looks bland and awful.
Axensus

Re: A mod-side way to force sector lighting mode

Post by Axensus »

You are right, I don't like the player lamp effect, but that's not why I miss Standard. I miss it because of this shit: viewtopic.php?t=79065
The way sectors are lit up in that screenshot makes NO sense whatsoever and in the case of a mod that dynamically lowers and raises sector light levels, the resulting effect makes me want to start a fire. I didn't know about gl_maplightmode (somehow missed it in the page I linked, ironically) so thanks for that, I guess. Creating an autoexec.cfg with it set to 0 is an acceptable solution for me. At least that way I can put it in the readme of the mod. It's better than nothing.
dpJudas
 
 
Posts: 3134
Joined: Sat May 28, 2016 1:01 pm

Re: A mod-side way to force sector lighting mode

Post by dpJudas »

Professor Hastig wrote: Mon Aug 26, 2024 5:55 am The main issue here is not features - the main reason for keeping the old light mode is that it is considerably cheaper on hardware resources which on low end GPUs can mean better frame rates. I have an old laptop for testing where on some maps this means 60 vs 50 fps. As long as the engine intends to support all GL 3.x hardware this is needed.
This would have been a strong argument if not for the fact that all the other things added to main.fp over the years is the true reason it runs at 50 fps and why so many cling to OpenGL ES. It really has very little to do with the math in the shader calculating the software light mode. If the goal is really to support all GL 3.x hardware then surely you should strip that out too or make it optional, because boohoo someone's OpenGL 3.0 Nvidia 8600 card can't do that very well either.

In any case, I don't care if the goal of GZDoom is to support yum13241 Windows 8 computer (lol). I still insist that clinging on to confusing tons of users for supporting someone's crappy old garbage machine from 15 years ago is a pretty bad trade off. But hey, GZDoom can do as GZDoom wants.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: A mod-side way to force sector lighting mode

Post by yum13241 »

dpJudas wrote: yum13241 Windows 8 computer (lol).
Lol, that's not even my daily driver. Currently, it serves as the "little bros laptop". (i installed Linux on that thing a LONG time ago) My current laptop came with Windows 10 and is considerably less garbage. (We're talking Pentiums here, it runs everything I want it to mostly fine, lol)
dpJudas wrote: I still insist that clinging on to confusing tons of users for supporting someone's crappy old garbage machine from 15 years ago is a pretty bad trade off
People aren't gonna be happy when they can play literal AAA titles but not modernized Doom.
dpJudas wrote: This would have been a strong argument if not for the fact that all the other things added to main.fp over the years is the true reason it runs at 50 fps and why so many cling to OpenGL ES.
There used to be a time where a megashader (main.fp) was more efficient. Those times are gone and Graf hasn't changed it, and probably won't, since OpenGL is deprecated on GZDoom.

You sound like that one guy in that GZDoom release thread where he/she/it/they/whatever wanted Windows 7 support removed for no reason. You're saying GZDoom should drop support for every machine that isn't an RTX system because you can't get over people getting confused by light modes. That's stupid. That's more work for developers for nothing in return (for now).
dpJudas wrote: I still insist that clinging on to confusing tons of users for supporting someone's crappy old garbage machine from 15 years ago is a pretty bad trade off.
Classic could be renamed to Old, and the vanilla light mode may as well be removed, since Software looks exactly like vanilla. I'd say remove "Old" when GZDoom drops everything except Vulkan, then you'd know for sure they could take the Software light mode, then finally remove all the stupid lighting modes. Then you'd do the same for the fuzz modes.

I know hardware like mine is not going to run GZDoom 5. (I have a
SanyaWaffles
Posts: 819
Joined: Thu Apr 25, 2013 12:21 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Windows 11 for the Motorola Powerstack II
Graphics Processor: nVidia with Vulkan support
Location: The Corn Fields

Re: A mod-side way to force sector lighting mode

Post by SanyaWaffles »

Yum, what's your point? This thread already got closed.
dpJudas
 
 
Posts: 3134
Joined: Sat May 28, 2016 1:01 pm

Re: A mod-side way to force sector lighting mode

Post by dpJudas »

yum13241 wrote: Tue Aug 27, 2024 1:57 am
dpJudas wrote: yum13241 Windows 8 computer (lol).
Lol, that's not even my daily driver. Currently, it serves as the "little bros laptop".
OK so this just keeps getting dumber and dumber. Now its not even your computer, but some old abandoned computer that your poor brother is tortured to use that is the reason we should keep the support in. Icing on the cake would be if he doesn't even play Doom.
There used to be a time where a megashader (main.fp) was more efficient. Those times are gone and Graf hasn't changed it, and probably won't, since OpenGL is deprecated on GZDoom.
Nothing has really changed here except main.fp kept on growing until it no longer ran as fast on super old hardware. People use OpenGL ES not because ES has any magical properties for lower end hardware, but because its main.fp is a slimmed down version of the OpenGL backend main.fp shader. You can also magically get better performance by using an older version of GZDoom from the days main.fp was simpler.

By the way: OpenGL ES uses multiple shaders, so if megashaders used to be more efficient, then how come all those old computers prefer the OpenGL ES version? The truth is that small shader vs large shader is far more complicated a subject than you think it is. Graf wasn't wrong to initially use the setup he used, but feature additions eventually put us where we are now.
You sound like that one guy in that GZDoom release thread where he/she/it/they/whatever wanted Windows 7 support removed for no reason. You're saying GZDoom should drop support for every machine that isn't an RTX system because you can't get over people getting confused by light modes. That's stupid. That's more work for developers for nothing in return (for now).
Yes, that must be totally it. Certainly that must be why VKDoom only boots on a RT capable card. Oh wait! It doesn't! It currently supports GPU hardware released in 2013 (Nvidia 700 series is the oldest version it supports)!
SanyaWaffles
Posts: 819
Joined: Thu Apr 25, 2013 12:21 pm
Preferred Pronouns: They/Them
Operating System Version (Optional): Windows 11 for the Motorola Powerstack II
Graphics Processor: nVidia with Vulkan support
Location: The Corn Fields

Re: A mod-side way to force sector lighting mode

Post by SanyaWaffles »

Yum, I'm gonna be direct: the way you evangelize about stuff you have no clarity on, or lacking accurate info on, has been off putting to me for some time and one of the reasons I don't like posting here even after an administration switch. And any time someone directly tells you to chill, you go "stop flaming me!" or write another long-winded essay about whatever you can squeeze in.
yum13241
Posts: 853
Joined: Mon May 10, 2021 8:08 pm
Preferred Pronouns: He/Him
Operating System Version (Optional): EndeavorOS (basically Arch)
Graphics Processor: Intel with Vulkan/Metal Support

Re: A mod-side way to force sector lighting mode

Post by yum13241 »

You just made my day, thanks. (Lmfao)
dpJudas wrote: OK so this just keeps getting dumber and dumber. Now its not even your computer, but some old abandoned computer that your poor brother is tortured to use that is the reason we should keep the support in. Icing on the cake would be if he doesn't even play Doom.
No, but my other little brother plays Doom. And Minecraft, to an extent. Since I have old nardware I know what ACTUALLY WORKS for it, and one of thoe things is minimizing random writes to disk.

There's no reason to remove hardware support when it's not a burden on the devs.
SanyaWaffles wrote: And any time someone directly tells you to chill, you go "stop flaming me!" or write another long-winded essay about whatever you can squeeze in.
Heh, I'm that infamous? Well, I think you have me confused with someone else. At least I'm shamed for trying to debate without fallacies rather than some stupid DEHACKED patch I made when I was 11. Well it's clear when I just want to drop something for everyone to consider versus me having deep knowledge in the issue (you can ask me any question on dual-boot setups, not that it makes me a superior human [I'm not delusional.])

dpJudas wants to remove support for all non-gaming PCs because he can't stand someone seeing Doom incorrectly. Now if this prevented Graf from advancing the port I'd agree, fuck that old laptop. But it's clearly functional, and supports most GZDoom features. Let's not forget that PrBoom's OpenGL renderer looked far worse for a while before it was discontinued (remember the "GLBoom" light mode? It looked like shit, and that's a compliment, and NO ONE COMPLAINED.)

There's also that weird transition period where no one knew how to make graphics drivers, and botched Vulkan at that. There's no reason to remove support for non-Vulkan hardware just yet. It's not blocking Graf. It's harming no one except dpJudas and some guy who wants to alter lighting on everyone's map. And even then, I don't care for running the latest mods on that specific laptop (there's always LZDoom for netplay with my real laptop), and my real daily driver has Vulkan 1.0 (lol) so I'm not gone just yet.

I think this thread has turned into a flame-war more than an innocent F. Req. Let's hope no one get's banned.

I'm blunt. I hate sugarcoating. The truth hurts sometimes. At the same time, if I'm wrong, point it out bluntly and constructively.

Return to “Closed Feature Suggestions [GZDoom]”