Exemplo n.º 1
0
 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);
     }
 }
Exemplo n.º 2
0
    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);
        }
    }