Add the ablitity to specify a Specular texture in Materials and SurfaceAppearances

As a Roblox developer, it is currently too hard to represent materials with varying indices of refraction.

Due to the fact that roblox materials have a hardcoded specularity we are only able to accurately depict materials with iors ~= to 1.5 as such materials like water or diamond cant be properly rendered, as their iors differ significantly from 1.5:


(left diamond, middle glass, right water)

If this were to be added, if one decided they didn’t want fresnel in their game they could make the specularity 0 on their materials and add a duplicate overlaid ontop that has 1 metalic and 0 specular and use that to add specular highlights with the benefit of colourable specular highlights:

Additionaly one could also use this to improve baked ambient occlusion by multiplying the specularity by the same ambient occlusion factor they multiply their colour by:


(example from halo reach of ambient occlusion being baked into the specular texture, visible as dark lines in the undersuit.)

If Roblox is able to address this issue, it would improve my development experience because I would be able te represent materials like diamond or water more accurately, allow more variation in artstyle, and generaly improve the quality of ingame assets.

13 Likes