Make many death events just leave corpses (no gore)
This commit is contained in:
@@ -61,6 +61,12 @@ paletteToColor pc = case pc of
|
||||
WHITE -> white
|
||||
BLACK -> black
|
||||
|
||||
normalizeColor :: Color -> Color
|
||||
{-# INLINE normalizeColor #-}
|
||||
normalizeColor (V4 r g b a) = V4 (f r) (f g) (f b) (f a)
|
||||
where
|
||||
f = min 1 . max 0
|
||||
|
||||
mixColors :: Float -> Float -> Color -> Color -> Color
|
||||
{-# INLINE mixColors #-}
|
||||
mixColors rata ratb (V4 r0 g0 b0 a0) (V4 r2 g2 b2 a2) =
|
||||
@@ -70,6 +76,15 @@ mixColors rata ratb (V4 r0 g0 b0 a0) (V4 r2 g2 b2 a2) =
|
||||
f x y = sqrt $ normrata * x^(2::Int) + normratb * y^(2::Int)
|
||||
in V4 (f r0 r2 ) ( f g0 g2 ) ( f b0 b2 ) ( normrata * a0 + normratb * a2)
|
||||
|
||||
mixColorsLinear :: Float -> Float -> Color -> Color -> Color
|
||||
{-# INLINE mixColorsLinear #-}
|
||||
mixColorsLinear rata ratb (V4 r0 g0 b0 a0) (V4 r2 g2 b2 a2) =
|
||||
let fullrat = rata + ratb
|
||||
normrata = rata / fullrat
|
||||
normratb = ratb / fullrat
|
||||
f x y = normrata * x + normratb * y
|
||||
in V4 (f r0 r2 ) ( f g0 g2 ) ( f b0 b2 ) ( normrata * a0 + normratb * a2)
|
||||
|
||||
light :: Color -> Color
|
||||
{-# INLINE light #-}
|
||||
light (V4 r g b a) = V4 (r+0.2) (g+0.2) (b+0.2) a
|
||||
|
||||
Reference in New Issue
Block a user