How To Have Functioning Emissive Textures!

It should be noted that this is abusing unclamped Color3 values. This could very well break in the future, if Roblox decides to clamp Color3 values for whatever reason!!!

Fairly recently, I discovered a pretty neat trick. You can turn a boring emissive texture that doesn’t have any effect and make it bright and glowing - like neon!

This applies for pretty much everything that has a Color3 value and is technically a 3D object - such as textures and decals - this trick doesn’t work for parts, however, since the BasePart classes automatically assigns a BrickColor value based on the currently present color.

Anyways, to have emissive textures working, you’ll simply need to have a texture’s Color3 value set to something way above 255, like so:
image

This makes any texture or decal you have assigned come out like this:

Here’s what the texture looks like set to 0,255,255 instead of 0,9999,9999:
image

The higher the number, the brighter it becomes.

To have textures layer properly, you’ll simply need two parts - one with the emissive texture (without a background) and one with the Abedo / Diffuse texture like so:

It’s reccomended you have the emissive texture be around 0.02 - 0.05 studs above the abedo texture.

This is a good work around for now until Custom Materials are implemented. It sadly does not work for MeshParts, however.

Hope this tutorial helped some of you! :slight_smile:

97 Likes

Cool! I accidentally discovered this but did not really know what was happening. I had set the ambient lighting to a incredibly high number because of a scripting error and the whole world was glowing and incredibly bright. I don’t know if this is the same thing or if it something different. Either way, this is really cool! :smiley:

5 Likes

Same, I was just building and I set it really high for fun. :joy:

3 Likes

This is a really interesting result that is probably due to the new tonemapper that was implemented with the improved Voxel and new Shadowmapping lighting solutions. If Compatibility is used, this effect doesn’t work.
Compatibility:


Voxel:

Edit: Decreasing the exposure also has some really interesting results. This is definitely due to the tonemapper.

5 Likes

Yeah, this is already being used in games, and not just @CloneTrooper1019’s places either! Things becoming accidentally “neon” doesn’t even require out-of-range color3 values, it can happen to decals and part materials in strong lighting (like any light source of Brightness > 2). It briefly made all of Jailbreak go nuclear when the flag for the new lighting system first got turned on :smile: ParticleEffects and SpecialMeshParts with out-of-range VertexColor values are similarly affected, sometimes even glowing in 2 different colors in ShadowMap mode (one of which is actually a blown-out neon shadow)!

I had to clamp custom accessory coloring in my game, to prevent people (RemoteEvent exploiters) making every FileMesh accessory into faux-neon in the avatar editor.

9 Likes

I wasn’t aware of this technique being used by other Roblox developers - figured it was another bug I happened upon.

1 Like

This also works with force fields. You can create some pretty awesome effects.

33 Likes

Man, this will help with a lot of sci-fi builds, thank you :stuck_out_tongue_winking_eye:

2 Likes

I wanted to see how this behaves compared to the Neon material, and did some comparisons.

TL;DR: They’re the same effect, save for the one difference posted right below.

The only notable difference is that the Neon kinda fades out the part itself, whereas this texture trick just adds a glow but you still see that part.

Left hand is a Neon part, right hand is using these texture hacks.

BloomEffects

Neon is affected by BloomEffects, and wondered if this behaves in the same manner or just similarly.
Yes. They behave identical in this respect.
Raising the Threshold will make the glow fade away, just like the Neon. Changing the Size affects it the same as well, and so on.

Various BloomEffect settings

Graphics Settings

Neon renders differently at different settings, and I wondered if this could be used to ensure a glowing effect is the same for all users. Sadly not. It changes exactly the same as the Neon part.

13 Likes

How would this work with meshparts, if it does at all?

As this is a lightning bug for textures lightning overall, if the meshpart does not contain a TextureId and that you are changing values of a imported texture inside the meshpart, then yes.

1 Like

This is a thread that deserves more attention. Thank you for bringing this to light - this is a massive help to me and my project.

Doesn’t work if the part/texture is inside a character with a humanoid. Does anyone know a fix for this?

1 Like

You could attach a part to the character that’s outside of it’s hierarchy, and utilizing Roblox’s new CanQuery property - have it so the added Part(s) don’t affect raycasts!

Can you achieve this by doing Color3.new = (9999, 0, 0)?

1 Like

Mhm!

This’ll make it glow with a bias to red.

Pun intended? :wink:

Now, this is interesting. One sided neon parts with just one part.

how could i do it?, kind off torturing my brain learning along with scripting.