private void LoadEmissiveMap(glTFLoader.Schema.Material material, Material unityMaterial) { var emissiveTexture = material.EmissiveTexture; if (emissiveTexture != null || material.ShouldSerializeEmissiveFactor()) { // Strength var strengthExtension = ExtensionUtil.LoadExtension <glTFLoader.Schema.Khr_materials_emissive_strength>(material.Extensions, "KHR_materials_emissive_strength"); var strength = strengthExtension != null ? strengthExtension.EmissiveStrength : 1f; // Factor var factor = TypeConverter.ConvertColor(material.EmissiveFactor); unityMaterial.SetColor("_EmissionColor", factor * strength); // Texture if (emissiveTexture != null) { var texture = textureLoader.LoadTexture(emissiveTexture.Index, false); unityMaterial.SetTexture("_EmissionMap", texture); } unityMaterial.EnableKeyword("_EMISSION"); } }