emissiveTexture vs emissiveColor

Before I take a bunch of screenshots to diagnose this, a sanity check. The glow effect described here: Make Mesh Glow - Babylon.js Documentation is supposed to apply only to the parts of the mesh where the emissive texture is bright, right? Because when I assign a standard material an emissive color and texture, the whole mesh appears to glow that color (hard to tell if that’s the bloomy effect shown in the screenshot in that article or just acting as though the emissive texture is mixed with a solid block of color though.)

hi.glow layer works with parts of object where emissive present. if you use emisseve COLOR NOT TEXTURE with simple material you apply emissive on whole mesh. if you need use emissive on part of mesh use emissive texture or divide mesh and apply your material only to part of mesh or create in your app for 3d production mesh with multimaterial but simplest way use grayscale texture where black - no emissive and white - full emissive.

2 Likes

Thanks!

So this is with an emissive texture, a glow layer, and no emissive color:
C
Notice how the green orb in the front is lit up due to the emissive texture, but there is no glow.

If we add an emissive color, you get this:
A
A nice glow around the lit up parts on the emissive texture, but now the entire mesh is tinted the emissive color; compare emissive color + emissive texture with no glow:
B

Is there any way to get the second effect’s glow without the third example’s tint effect?

pinging @sebavan

dont use emissive color for whole mesh or you get “tint” because when you applied the color you highlighted the whole model/ or use multimaterial and assign emissive color only to part of mesh. make orb separete from spaseship and use emissive color/ but i think you misunderstood something. all works fine with texture программа для Web - скриншотов программа для Web - скриншотов

https://www.babylonjs-playground.com/#LRFB2D#3

In standard mat emissive color and textures are summed whereas they are multiplied with each other in PBR.

The glow layer acts like the PBR methods, it multiplies colors and textures so no color e.g. black does remove completely the effect of the textures where white makes it completely visible.

Unfortunately as they sum in the std material, they also tint the rest of the material.

so in your case you could use custom color white and custom texture for the glow layer for this mesh:

https://doc.babylonjs.com/how_to/glow_layer#controlling-glow-color-per-mesh

1 Like

That did it, thanks. I ended up hanging the glow color on the material and using a custom selector to make it work.