Several issues with the lighting engine

Hello. There’s some genuinely terrible issues with the lighting engine i really need to report. All of these are about the Future technology so some of these points may not be valid for other technologies.

first issue, which many have encountered, is light being illuminated from corners:
image
this ruins ANY atmosphere that was built. As far as i know you can only fix this via these 2 unpractical methods:

  1. Cover the entire corner so you cover the light too
  2. Change your outdoor ambient to either very bright to mask it or very dark.
    these methods are of course unpractical due to the fact light size varies by the size of the room.
    This bug is consistent on all graphics levels I’m pretty sure.

Edit: you can actually fix this by duplicating the wall, making it thinner and move it inside the wall. This blocks the light for some reason.

Light are VERY laggy (especially on lower graphics)
this can be unplayable. games like doors suffer from this since not only are there visual cues, but flashlights and lighters too. this basically makes graphics under 4 unplayable since it’s awfully tedious.

Light load very slow (and there’s no way to tell when lighting loads. Perhaps make a lighting loaded event?)
Sometimes it can take up to 10 seconds. Usually, it’s around 6. This also affects doors. Here’s a video: https://youtu.be/04xBh9j2VTY (unrelated game showcasing the issue)

There’s no way to play with better lighting due to the fact graphics are tied to a lot more, like render distance.

Mobile lighting ALWAYS looks pretty bad no matter what graphics level you’re on. While this makes sense, it looks genuinely awful (like graphics under 4 except it’s for all graphic levels)

There are multiple issues, and people left feedback in this post (original post contained false information, read replies): https://devforum.roblox.com/t/robloxs-lighting-is-problematic/2178736/
While multiple people have reported issues with the lighting engine before, they have not been fixed. Please leave more issues in the replies.

Possible solutions:
I don’t know how you’d fix the corner issue but it totally is not hard if you actually work with it.

There should be an event to tell if a point/spot/surface light calculated.

To fix the graphics problem, they could have 2 sliders for lighting and render distance, like zfeatureharmony had:


it was genuinely a good thing, and could be simplified to be usable by anyone.

Issue Area: Engine
Issue Type: Lighting
Impact: REALLY high
Frequency: Constantly

Wish at least some of these issues were fixed. I know this post hasn’t been written too well, but these issues have been bugging everyone.

10 Likes

We’ve filed a ticket into our internal database for this issue, and we will update you when we have further information!

Thanks for the report!

3 Likes

There’s also this bug:

Seems like we won’t be getting an update on it for a while.

The reason why this is problematic is because I want a reasonable TimeOfDay with accurate brightness adjustments made automatically. I usually set EnvironmentDiffuseScale 1o 1 and Brightness to 0. It works, but due to the lighting up of the interior corners, it’s unusable in indoor environments.

I made a thread a while back that explains my use of this particular configuration:

There’s also an ongoing issue with voxel-based lights that causes them to tear when the PVInstance is in motion.

Currently, the only workaround is to set EnvironmentDiffuseScale (and sometimes also EnvironmentSpecularScale) to zero and use Ambient and OutdoorAmbient instead. However, I dislike this as I don’t get good skybox ambient light, have to rely on Brightness, and lose PBR.

Date First Experienced: January 2020 (ever since FIB phase 2.5)

3 Likes

I think this reply in one of the threads you linked also showcases the issue very well: How Can I Prevent Light from Bleeding Through? - #4 by VGVC2

2 Likes

This is because of ambient lighting probably due to technical limitations.

Have you tried to implement Content Streaming in any way or reduce the amount of lights with performance heavy options like CastShadow?

In RDC 23, I remember there being an announcement about Roblox bring a watered-down version of Future Lighting to mobile devices, I cannot find it anymore but there is a screenshot of it somewhere. It looked like smoothed out ShadowLighting with some reflections and shadows.
I hope this becomes it’s own lighting technology we can switch to or keep it as a update to ShadowMap because it would be nice to have smoother lighting that isn’t completely Future lighting. (Rotating lights look so clunky and jittery due to limited voxels)

You’re going to give @xtremeguy2256 flashbacks :frowning:

3 Likes

I meant as in moving a part and it takes 5 years to move

Speaking of lighting engine issues,

I’d like to add how ridiculous it is that rotating a part where it’s not direction 45, 90, 180 degrees makes it so light shines through blocks:

0, 45, 90, 180 Degree:


Any other angle:

This makes it impossible for me to make every tycoon in my game look the same, as they are rotated along a circle. Some are too bright, and some are too dark.

2 Likes

Thanks everyone for sharing your issues too. we’ll just have to pray to god they’ll actually do ANYTHING

1 Like

Can we get an ETA on the next lighting update? Even if it isn’t a fix? Right now, it seems like you’re not really working on anything lighting related (I’m probably wrong, and I hope I am) and I really want to know. Or just a confirmation that you are working on something. I’m desperate.

1 Like

I FOUND A FIX TO THIS: put a part inside of the wall:
image

i have found another issue. Because of the fact your character’s transparency is set to 1 while you’re in first person, your shadow disappears. i had this issue for quite a while with setting body transparency to 0 but i couldn’t set the head visible for obvious reasons which lead to no head shadow.

Your character went invisible because you are in first person. Invisible parts don’t have a shadow. This isn’t a lighting issue, it’s intentional.

i said that too, but i should’ve probably elaborated and said that i want invisible parts to still cast shadows lol

You’ll notice that every game you play will look like trash if their invisible walls make a shadow.

castshadow off moment

2 Likes

actually it would be really cool to have the opposite, have a shadow option for transparent parts (disabled by default). you could create some really cool illusions or whatever with it. and of course, you could fix the first person shadows (i have this issue too).

1 Like


for me its the opposite, the lighting is making my character look exposed

3 Likes

I have it too, but it might vary on the lighting mechanic (“Compatibility”, “Future”)

I hope that we see a significant improvement with lighting as a whole with the release of some of the features on the Roadmap:

(Full FiB shadows for local lights and phong shading on mobile. Just ummmm… ignore the fact that it says “Mid 2023” and it’s the 2nd of December.)

(Improved light baking times for voxels? I heard they are moving it to the GPU.)


A ton of these are like saying “Screen-Space Reflections (the thing used for Terrain Water reflections) are broken because they don’t reflect anything off-screen!”, like, that’s just what screen-space reflections are, “screen-space”. They are only capable of creating reflections for things that are on-screen, and getting them to not do that would be replacing SSR for a different reflection method altogether.

And a lot of this post is like that, but for the Voxel grid or performance, so;

Is a limitation with the resolution of the voxel grid being 4x4x4. The wall is just so small that the voxels that effect it are being lit from outside it, but still bringing light in past it. Having walls be a minimum of 6 7 studs thick will fix this.

Intentionally using lower graphics quality generally means you can’t play the game on higher qualities because of low FPS, how do you know a big reason for that low FPS is not voxel grid updates? Roblox’s mentality is playability over graphics, make lower qualities as ugly as you need them to be so that, at the very minimum, tons of people can still play games on the platform.

What even is this point? “A lot of mobile devices are under-powered and can’t handle good graphics and so I’m going to push the blame onto Roblox”? Sure, it can look better, but ideally they would want to keep as much of their playerbase as possible.

1 Like

i tried and it didn’t work for me