Ejemplo n.º 1
0
    public static Color Get(Vector2 position, LayerSetting layerSetting, MaskEffect maskEffect, float maskTranslucency)
    {
        if (maskEffect == MaskEffect.Unlit)
        {
            return(Color.black);
        }

        //	return(Color.white);
        if (layerSetting.maskEffect == LightLayerMaskEffect.AboveLit)
        {
            return(LayerSettingsColorEffects.GetColor(position.y, layerSetting));
        }
        else if (layerSetting.maskEffect == LightLayerMaskEffect.NeverLit)
        {
            return(Color.black);
        }
        else
        {
            return(new Color(1, 1, 1, maskTranslucency));
        }
    }
Ejemplo n.º 2
0
    public static Color Get(LightColliderShape lightShape, Vector2 position, LayerSetting layerSetting, MaskEffect maskEffect, float maskTranslucency)
    {
        if (maskEffect == MaskEffect.Unlit)
        {
            return(Color.black);
        }

        if (maskEffect == MaskEffect.Isometric)
        {
            Rect rect = lightShape.GetIsoWorldRect();
            if (rect.width < rect.height)
            {
                float x = position.y + position.x / 2;
                return(LayerSettingsColorEffects.GetColor(x, layerSetting));
            }
            else
            {
                float y = position.y - position.x / 2;
                return(LayerSettingsColorEffects.GetColor(y, layerSetting));
            }
        }

        //	return(Color.white);
        if (layerSetting.maskEffect == LightLayerMaskEffect.AboveLit)
        {
            return(LayerSettingsColorEffects.GetColor(position.y, layerSetting));
        }
        else if (layerSetting.maskEffect == LightLayerMaskEffect.NeverLit)
        {
            return(Color.black);
        }
        else
        {
            return(new Color(1, 1, 1, maskTranslucency));
        }
    }
        private int x, y;                    // Last pixel analysed in mask generation co-routine. All pixels are analyed once to construct mask.

        // Called on Component instantiation. Sets cam and maskEffect to reference appropriate Components.
        private void Awake()
        {
            cam        = GetComponent <Camera>();
            maskEffect = GetComponent <MaskEffect>();
        }