private static bool ProcessTransparency(UnityEngine.Material mat, GLTF.Schema.Material material)
{
if (!mat.HasProperty("_Mode"))
{
return(false);
}
switch ((int)mat.GetFloat("_Mode"))
{
// Opaque
case 0:
material.AlphaMode = AlphaMode.OPAQUE;
return(false);
// Cutout
case 1:
material.AlphaMode = AlphaMode.MASK;
material.AlphaCutoff = mat.GetFloat("_Cutoff");
break;
// Transparent
case 2:
case 3:
material.AlphaMode = AlphaMode.BLEND;
break;
}
return(true);
}