Page MenuHomeFeedback Tracker

Lighting issues durring Night in 1.23
Assigned, NormalPublic

Description

First of, glad you guys are making improvements to the Lighting in the World.
BUT here is the issue, which btw, has been an issue for ages.

When the Moon is up durring the night, it is supposed to Illuminate the World around you except of what is in the Shadows of the Moon, and that works and looks great.
However, When there is no Moon... the World is not as dark as if it were all in the shadows (which would be realistic, no moon in the sky means the planet is casting a shadow on everything, right)
No, there is no moon, the world is as bright as if there were a Moon, just no shadows anywhere...

Which makes playing in the night while the Moon is up a downside...
While playing without a moon is an upside, you can see pretty good in houses and forrests.

Here 2 Images for comparison... it realy ruines the Immersion at night and makes the good look of nights durring Moon irrelevant.

Is it not possible to make it so, that when there is no Moon in the sky that everything has shadows on it?

Details

Severity
None
Resolution
Open
Reproducibility
N/A
Operating System
Windows 10
Category
General

Event Timeline

Streatman created this task.Oct 7 2023, 4:53 PM

I would love to have more realistic nights on my server.
But with how it is now,
you eighter have a night setup that is so bright that it doesnt matter that the moon is making the night darker
or
you have a night setup that is so dark that you wont even see a thing... so again that it doesnt matter if the moon is making it darker.

and these 2 options are pretty much what Vanilla dayz Provides atm... super dark no mater what, or super bright no mater what...

Geez changed the task status from New to Assigned.Oct 9 2023, 9:56 AM
Streatman added a comment.EditedNov 3 2023, 1:49 PM

Soo... may i ask what "Assigned" means?
Is someone working on it to fix it for stable, or is it just going to be in the Backlog again forever?

Because this issue kinda defeats the purpose of having a difference between having a moon and not having a moon.

Soo... may i ask what "Assigned" means?

This has been reported at least once before btw.

Assigned means, someone on their internal tracker (Dev, QA) would be assigned to investigate it to reproduce the issue or look at the code.

Nolhek added a subscriber: Nolhek.Nov 3 2023, 11:39 PM
Streatman added a subscriber: Geez.EditedNov 6 2023, 7:32 PM

OK in that case, then maybe a bit more feedback could help @Geez

It is the Renderer that is the Issue i think.

When the Moon is up (regardless of Moon Phase and position in the Sky). The base brightness of the World gets defined by desiredLuminanceCoef.
The Renderer uses diffuse[] to overlay the surfaces that are facing the Moon with the colour defined in it. This doesn't make the surface of the object darker or brighter.
It will use bidirect[] to overlay all surfaces that are not facing the Moon. bidirect is set to the Colour Black ( RGB: 0,0,0 ) at night and that is what it makes seam dark.
And it will use ambient[] as the colour of the overlay of surfaces that are in the shadows. It is not Quite black but still pretty dark at night.

The Renderer gets confused when there is no light source in the Sky and then does neighter of the 3 above. And the World lighting then only gets controlled by desiredLuminanceCoef.

So there are basically 2 Solutions to this. a quick way and the fancy way.
the Quick way would be, to tell the Renderer to use bidirect[] or ambient[] for all surfaces as long as there is no light source... this solution lets one aspect unattendet that i have not mentioned yet though.

The Moon phase has no impact on the brightness of the night.... so a Full Moon is making the night just as bright as a Half Moon...

The fancy Solution would be to have the desiredLuminanceCoef dynamic between a Min and a Max. the Max Value would apply by a Full moon in the Sky, making the World as bright at night as it can get. While a Min value would be no Moon, the world could be as Dark as it can get.
Depending on the Moon Phase, the World would then return a Float in between Max and Min.
As Example: No Moon at all could cause a desiredLuminanceCoef = -0.14; which is the Value the Lighting config for the Dark world is...
A Full Moon could cause a desiredLuminanceCoef = 0.12; which is the value of the default Lighting config.

lava76 added a subscriber: lava76.Nov 7 2023, 11:53 PM
Geez added a comment.Nov 8 2023, 9:03 AM

OK in that case, then maybe a bit more feedback could help @Geez

It is the Renderer that is the Issue i think.

When the Moon is up (regardless of Moon Phase and position in the Sky). The base brightness of the World gets defined by desiredLuminanceCoef.
The Renderer uses diffuse[] to overlay the surfaces that are facing the Moon with the colour defined in it. This doesn't make the surface of the object darker or brighter.
It will use bidirect[] to overlay all surfaces that are not facing the Moon. bidirect is set to the Colour Black ( RGB: 0,0,0 ) at night and that is what it makes seam dark.
And it will use ambient[] as the colour of the overlay of surfaces that are in the shadows. It is not Quite black but still pretty dark at night.

The Renderer gets confused when there is no light source in the Sky and then does neighter of the 3 above. And the World lighting then only gets controlled by desiredLuminanceCoef.

So there are basically 2 Solutions to this. a quick way and the fancy way.
the Quick way would be, to tell the Renderer to use bidirect[] or ambient[] for all surfaces as long as there is no light source... this solution lets one aspect unattendet that i have not mentioned yet though.

The Moon phase has no impact on the brightness of the night.... so a Full Moon is making the night just as bright as a Half Moon...

The fancy Solution would be to have the desiredLuminanceCoef dynamic between a Min and a Max. the Max Value would apply by a Full moon in the Sky, making the World as bright at night as it can get. While a Min value would be no Moon, the world could be as Dark as it can get.
Depending on the Moon Phase, the World would then return a Float in between Max and Min.
As Example: No Moon at all could cause a desiredLuminanceCoef = -0.14; which is the Value the Lighting config for the Dark world is...
A Full Moon could cause a desiredLuminanceCoef = 0.12; which is the value of the default Lighting config.

Hello, can you please update us on the state of things after the stable update?

it is still the same sadly. @Geez
Here images from DayZ community offline mode with Vanilla Default light

and here pictures from our (work in progress) livonia server with our custom Lightingconfig (middle ground between default and dark of vanilla).

and here pictures of Community offline mode with our custom Summer Mod and custom Lighting config.

i used the same dates for compareability. 27.09.2017 for Full Moon, 23.09.2017 for no Moon

If you need it, i can send you guys my custom light config. it could make testing on your end easier.

Just let me know if there is any way i can help.

are you testing this on Offline mode or actual server ? because lighting is different on actual servers as far as I've noticed.

@WeirdXone Both as i have written in my reply above. My custom lighting gets also written into the configs. So offline Lighting and on the Server are the same.

But just to make sure @Geez , i fired up my test server and made comparison Screenshots of default lighting, dark lighting and my custom lighting with and without moon in the middle of Stary Sobor.
We will start with the Default lighting config of Vanilla:

First with Full Moon (ingame date 27.09.2017 at 00:00 this date will be used for all moon nights)


Then without a Moon in the Sky (ingame date 23.09.2017 at 00:00 this date will be used for all nights without moon)

you can see, that the areas that were previously darker due to the shadows go back to their default colour which makes them brighter. It doesnt realy matter with that light config setup because even the areas that are not lit by the moon are still very bright and well visible.

Second, we will go with Vanilla Dark Lighting config. Here we will also start with the Night with a Moon, then without.


here you can see... that you can't realy see even with a Full Moon... the only thing that is visible, are the surfaces of the chuch that are facing the Moon. The Ground and everything else is barely visible, if at all so much so, that it doesnt realy matter, if there is a Moon in the sky or not.
Which means, that a Moon is pretty much meaningless in both vanilla Light configs

This is why i made my custom Light config which we are running on our servers and that i will show you now:


Here you see that durring Moonlit nights, a player can see Buildings, Trees and other surfaces as long as they are lit up by the Moon. Surfaces and Objects that are not lit by the Moon are very dark like you would expect, after all, without light, there is nothing to see.
Now, without a Moon, like in the Default and in the Dark Lighting config, the world goes back to its default brightness that gets defined by desiredLuminanceCoef which is the problem. areas that were darkened due to the shadow that was cast on them, become well visible again even though, logicaly speaking, every thing is now in the shadow of the planet itself. ambient[] is the config that is setting the colour of surfaces that are in the shadow while there is a moon... this config should be applied to every surface and object, when there is no moon.
The same thing is happening in the interiour of Houses... the Building is casting a shadow on itself, which makes the inside of buildings dark while a moon is up. which is good, i like that. But the moment the Moon is gone, the shadows are gone. and i can see inside of buildings very well... which is obviously not what i want

@Geez are there any news about this for 1.24 or for the year 2024 in general?
I don't want to annoy you, but i kinda care a lot about this specific issue.

Geez added a comment.Jan 30 2024, 3:15 PM

Hello Streatman.
We are aware of this problem. Currently I cannot share any estimates as to when or if this will be addressed.
Definitely it is not by design, it is just a byproduct of how the system works now.