private void SetTargets(LightingEvent light, Color a) { if (previousValue == MapEvent.LIGHT_VALUE_BLUE_FADE || previousValue == MapEvent.LIGHT_VALUE_RED_FADE) { light.UpdateCurrentColor(a * HDR_Flash_Intensity); light.UpdateTargetAlpha(0); } else { light.UpdateTargetColor(a * HDR_Intensity, 0); light.UpdateTargetAlpha(a.a); } }
private void SetRendererMaterials(Renderer renderer, LightsManager lightsManager = null, float width = 1f) { Material[] materials = renderer.sharedMaterials; if (materials.Length >= 1 && materials[0] != null) { if (materials[0] != null && (width >= 0.5f)) { Array.Resize <Material>(ref materials, materials.Length + 1); } Material lastMaterial = lightMaterial; for (var i = 0; i < materials.Length; i++) { Material tempMaterial = materials[i]; if ((tempMaterial?.shader?.name?.Equals("Unlit/Color") ?? false) && !(tempMaterial.color.r == 1 && tempMaterial.color.g == 1 && tempMaterial.color.b == 1)) { tempMaterial = useThisBlack; } materials[i] = lastMaterial; lastMaterial = tempMaterial; } } else { materials = new Material[1]; materials[0] = lightMaterial; } renderer.sharedMaterials = materials; if (lightsManager != null) { LightingEvent le = renderer.gameObject.AddComponent <LightingEvent>(); le.LightMaterial = lightMaterial; lightsManager.ControllingLights.Add(le); } }