Search public documentation:


Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 Home > Lighting & Shadows > Texture Defined Specular Reflection
UE3 Home > Lighting Artist > Texture Defined Specular Reflection

Texture Defined Specular Reflection


The Texture Defined Specular Reflection (TDS) Lighting model is suitable for surfaces that you want a non-circular gradient highlight. It aligns the center of a texture to where a highlight would be located. This lets an artist paint any texture pattern to define the shape of the highlight. Another advantage of this shading model is when you increase specular sharpness the highlight becomes smaller to an extent and then sharper as opposed to phong which just gets smaller.


This is currently a content-created lighting model. This means that any material you wish to create using this lighting model will have to be copied from EngineMaterials.LightingModels.M_TextureDefinedSpecularReflection. This also means that any material changes you do with have to flow through the CustomLighting input. You will also need to plug your diffuse into the Diffuse and CustomSkylight Diffuse input, this is to ensure that the model is lit correctly when SH lighting is used. Emissive input works as normal.

To define the shape of your specular highlight replace the SpecularReflection texture with one you've created. This is usually a 32x32px image imported as grey scale. You can see a few examples in EngineMaterials.LightingModels.Textures.

To increase the sharpness of the material simply raise the value of SpecularReflectionSharpness. This value can also be replaced by a texture driven lerp of 2 values or any other function you would typically plug into SpecularPower.

When creating your own material you can replace or add to any of the textures marked as Diffuse, Normal, Emissive or Specular. These will work just like Phong all you have to do is make sure your textures/functions plug into the same spots you replaced.


Here is a Comparison to Phong highlights.