Waiting for Lighting to Reach Max Quality

  1. What do you want to achieve?

I want my “loading” screen to continue until Future is Bright lighting is fully rendered.

  1. What is the issue?

When users first load into my experience, the flashlight looks bad because it’s running on old lighting technology by default. After a few seconds, the quality of the lighting very close to the player increases, then after a longer wait, it looks like it’s supposed to. I’d like to cover that with some nice screen effects so it doesn’t look sloppy.

This delay is inconsistent, and it’s going to vary between systems, so a simple wait isn’t going to do it.

Video showing my issue:

  1. What solutions have you tried so far?

I checked the Doc Page for the Lighting service to see if there’s an event for lighting render steps. I also tested to see if LightingChanged fires when these rendering updates happen (it doesn’t).

Is there an event, property, or something else I can check to determine when a client has finished stepping lighting up to full quality?

Have you tried to use a game:IsLoaded() ?

If that doesnt work, this person has a different solution that also will work:

I just tried out game:IsLoaded and it fires too early. I also tried putting everything from the Workspace into PreloadAsync (it’s a small test area, not a full game) and PreloadAsync reports that it’s done before the lighting graphics update.

I may just have to turn off the light when the player first loads in and tell them how to turn it on in a tutorial that’s far enough in to avoid the graphical issues. I was just hoping there was some event I wasn’t familiar with.

1 Like