private static void SetMaterialKeywords(Material material, StandardShaderGUI.WorkflowMode workflowMode)
{
StandardShaderGUI.SetKeyword(material, "_NORMALMAP", (bool)((UnityEngine.Object)material.GetTexture("_BumpMap")) || (bool)((UnityEngine.Object)material.GetTexture("_DetailNormalMap")));
if (workflowMode == StandardShaderGUI.WorkflowMode.Specular)
{
StandardShaderGUI.SetKeyword(material, "_SPECGLOSSMAP", (bool)((UnityEngine.Object)material.GetTexture("_SpecGlossMap")));
}
else if (workflowMode == StandardShaderGUI.WorkflowMode.Metallic)
{
StandardShaderGUI.SetKeyword(material, "_METALLICGLOSSMAP", (bool)((UnityEngine.Object)material.GetTexture("_MetallicGlossMap")));
}
StandardShaderGUI.SetKeyword(material, "_PARALLAXMAP", (bool)((UnityEngine.Object)material.GetTexture("_ParallaxMap")));
StandardShaderGUI.SetKeyword(material, "_DETAIL_MULX2", (bool)((UnityEngine.Object)material.GetTexture("_DetailAlbedoMap")) || (bool)((UnityEngine.Object)material.GetTexture("_DetailNormalMap")));
bool state = StandardShaderGUI.ShouldEmissionBeEnabled(material.GetColor("_EmissionColor"));
StandardShaderGUI.SetKeyword(material, "_EMISSION", state);
MaterialGlobalIlluminationFlags illuminationFlags1 = material.globalIlluminationFlags;
if ((illuminationFlags1 & (MaterialGlobalIlluminationFlags.RealtimeEmissive | MaterialGlobalIlluminationFlags.BakedEmissive)) == MaterialGlobalIlluminationFlags.None)
{
return;
}
MaterialGlobalIlluminationFlags illuminationFlags2 = illuminationFlags1 & ~MaterialGlobalIlluminationFlags.EmissiveIsBlack;
if (!state)
{
illuminationFlags2 |= MaterialGlobalIlluminationFlags.EmissiveIsBlack;
}
material.globalIlluminationFlags = illuminationFlags2;
}