I have a star mesh that has a Texture on it for the mouth, which is just a black curve for a smile. The star's material has a translucent shader and the star has a light inside it, creating a glow effect. However, this causes my mouth to fade out as you move away from the object. Is there a way to stop this from happening? The yellow-mouth material is assigned only to mouth area and the Material is assigned to the rest of the object.
OK a few mn to spare to take a crack at it:
The basic concept is to render the smile on a separate layer and overlay it over the bloom effect using Compositing.
In this example, I used a curve instead of a texture for the smile. A texture could still be used as long as it is rendered with some transparency around the smile.
- Remove the smile texture from the star material
- Check the
Film/Transparentbox, this allows to do compositing properly
- Create your smile using a curve and beveling it. Use a black emission shader. Parent it to the start
- Create a 2nd Layer just for the Smile. We'll use this collection to render only the smile in the second layer
- Make sure to enable
Environmenton your main render Layer
- Create a second render layer and disable the main collection, leaving just the Smile collection enabled.
- Composite the environment and the two layers using
Now the smile should remain visible no matter how far the star is or how strong the bloom is. Note that since the composite effect is only applied at render time, the Viewport bloom will still cover the smile if the star is far away.