-
-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Option for Environment's Reflected Light Soruce to be a Different Sky from the Background #3593
Comments
In
"need" is probably not the correct term, as using a different sky for ambient lighting and reflections isn't physically accurate. If you find ambient light too bright when not using GI, decrease the Sky Contribution property and set a constant ambient light color (which is mixed with the ambient sky light color when Sky Contribution is greater than 0.0). |
I think you misunderstood the issue, I don't use the Background Sky for Ambient light, because my background is constantly changing (day/night cycle) and I need Ambient Lighting to be constant, However Metal Surfaces don't get any Ambient Lighting, only Reflected Lighting, so I need Reflected Lighting to be constant too, for which I need to decouple Background Sky from the Sky that is contributing to Reflected Lighting, so that I have a Dynamic Sky and a Static Sky, providing the Backround+No Light and No Background+Light respectively. One of the Reasons why I cannot use Dynamic Ambient Lighting is Because of mostly-Enclosed Interiors that must have some light, so that they aren't pitch black, and I also can't use Emissive materials, as they fail to provide the level of depth & metallic-ness that ambient lighting does, while Baked Lightmaps again fail to get a proper result, and just increases game size The Only workaround I can think of is to use GI, however that has the problem of Performance being too costly, not to mention it isn't a part of the Forward Mobile Renderer. Also, Ambient Light can just set Color, which isn't Physically accurate, and it's still an option, just like setting a separate Sky Material for the AL and RL should be an option (more so for RL, as AL usually works just fine with Color, something that RL wouldn't work well with probably) |
Look into using ReflectionProbes, which are supported in the Vulkan Mobile backend 🙂 |
that only somewhat gets the desired result, while not being global, and also not really working great with Little lighting in the scene. I mean it is a significant improvement over Nothing, but not as good as Sky Reflected Lighting is for what i'm looking for. |
@mrjustaguy Do you have any ideas how this should be exposed in the UI? Right now the environment can only support one Sky. The Sky is exposed if either the background, reflections, or ambient, use MODE_SKY. |
@mrjustaguy: Your use case would be solved if my proposal would be implemented: #148 |
I'd add a Checkbox in Sky, that determines if one Sky is used or two are, and if two are, the 2nd would affect AL & RL if they are set to "Sky" (not background, that should use Sky 1) I'd Call it something like |
I've found a workaround:
In the running project: Example project ( |
@mrjustaguy Would you consider this workaround sufficient? Since I doubt this is a very frequent use case (it's not physically accurate), I'm not sure if it's worth the effort implementing this in core. I haven't tested it in |
Yeah, I've been testing it a bit, and seems to work fine for the use case needed so I think this can be closed, albeit Forward Clustered Renderer might have issues until culling is fixed. Haven't tested how the issue affects this as I am not using that renderer for the project. |
For further reference, there is a second way to use different reflections and sky if you don't want to use a ReflectionProbe:
Example project ( |
Describe the project you are working on
Game with Metalic Surfaces and a Dynamic Sun
Describe the problem or limitation you are having in your project
Ambient Light and Reflections Need to be constant, which can be done for Ambient Light by using Color instead of Background/Sky, however Reflected lighting cannot be specified in a way that is decoupled from the Skybox.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Adding an ability to specify a new separate Sky Resource for Reflected (and Ambient could use it too) Light would allow for a Dynamic Skybox, while keeping Constant Background Lighting when desired.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
Add an option for Specifying Skies to the Environment Lighting, If none set, use the one the Background uses.
If this enhancement will not be used often, can it be worked around with a few lines of script?
No way to Workaround atm.
Is there a reason why this should be core and not an add-on in the asset library?
Environment is Core.
The text was updated successfully, but these errors were encountered: