Color accuracy for LightInfluence = 0

As a Roblox developer, it is currently too hard to display color-accurate textures and GUI on camera-rendered instances using LightInfluence like SurfaceGui, ParticleEmitter, Beam, BillboardGui, etc. No matter what values are used for Brightness or LightEmission or LightInfluence, you can never get the game to render the original image’s colors. This has been reported before (1).

This is the closest I could get:


left: SurfaceGui with LightInfluence = 0 and Brightness = 2; right: ScreenGui

The property AlwaysOnTop does solve the color issue…


…but at the cost of drawing over everything else, of course. Some new property like IgnoreLighting or NoLighting that would make the GUI object or particle or whatever instance draw its colors accurate to the texture independent of lighting, or changing the behavior of LightInfluence = 0 to do this, would be immensely useful.

Ideally I’d like this “lighting independent” or “true color” ability for Decal, SurfaceAppearance, Texture, etc. as well, but I understand if this is stretching the ask a bit. It’d be nice, though! There is already a topic requesting LightInfluence for Decals and Textures.

If Roblox is able to address this issue, it would improve my development experience because a game I’m currently working on requires accurate colors for a primary game mechanic.

12 Likes

A workaround I found is to use a ColorGradingEffect with its TonemapperPreset set to Retro. This produces the expected colors for the gui, but it also changes the tonemapping of the entire scene

Here’s a screenshot with the ColorGradingEffect disabled, you can see the SurfaceGui on the right is noticeably darker than the ScreenGui elements on the left


With TonemapperPreset.Retro:

4 Likes

This does, though, come with the side effect of changing literally your entire game’s lighting.

3 Likes

It’s actually really useful and I found that simply just increasing the contrast a bit with a colorcorrection in lighting basically brings it back to normal, was always so annoyed at seeing white textlabels appear grey, only turned white when alwaysontop turned true, and changing light influence didnt help either, good tip!

1 Like