Detecting MaterialX translucency in Storm


We are running into an issue with how storm detects if a material is translucent .
_GetMaterialTag checks for the presence of specific token opacity, transmission etc to determine if the material is Translucent

But later that tag is not used for shadergeneration

The main problem with this approach is that there could be a node that wraps standard surface and defines translucent using a different name.
e.g. <input name="opacity" type="color3" value="1, 1, 1" interfacename="surface_cutout" />

Iā€™m proposing that we change this so that storm always generates a mtlx doc and depends on mx::isTransparentSurface to detect if material is translucent.
Does anyone foresee any issues with this?


1 Like