How can I get my translucent textures at 100% opacity to look like a non-translucent material?

I’m trying to dynamically change the opacity of a material at runtime. That works fine, with one problem: it looks like dookie at 100% opacity. Here’s a comparison:


The box on the left is the normal material. The one on the right has had the blending mode changed to Translucent and the Translucency Lighting Mode to “Surface TranslucencyVolume”. It is at 100% opacity. I would like to make my materials appear as close as possible to the non-translucent version when at 100% opacity and fade out when I lower the opacity.

Is the material not receiving the light properly? Do I need to do a hack like bake the lighting into my texture or something? I’m not sure what the most straightforward approach would be (or how to even accomplish it).


The difference comes from the fact that not all translucent lighting modes support specular highlights.
Here are a few things you can do:

  1. Use Surface ForwardShading for your translucency Lighting mode this one works with secular highlights, but has issues with shadows
  2. Use the Single Layer Water shading model will probably give you the best results (with real translucency) - but this material only supports SSR for reflections.
  3. Use a masked material with a dither temporal AA node going to the opacity mask - best performance out of these, can look the best, BUT in some cases can appear grainy - have a look at the general topic of dithered opacity.

Thank you! Surface ForwardShading did the trick. I had played around with Thin Translucency earlier, and it seemed to work well at 100% opacity, but when I went down to zero the whole model just turned black and was still visible. This seems like the best appearance now.

I’ll look into those other two topics you mentioned too. In general I’m finding it hard to find documentation that doesn’t make a bunch of references to other lighting topics it assumes you already understand (which I don’t).

For anyone else who comes across this: this video describes dithered opacity well. Gonna give that a shot.

Edit: Looks great, I’m loving it. Thanks again. Can’t really find a good explanation for getting Single Layer Water working, but the other two are working fantastically. I think I’m going to go with dithering since it seems to be a pixel perfect representation of the original image.

Edit 2: Okay, I really love this. I even have shadows again. Unreal is awesome.