module HGamer3D.Data.Colour
(
Colour (..),
ctColour,
white,
silver,
grey,
darkgrey,
black,
red,
maroon,
yellow,
olive,
lime,
green,
aqua,
teal,
blue,
navy,
fuchsia,
purple
)
where
import Data.MessagePack
import Fresco
data Colour = Colour {
cRed::Float,
cGreen::Float,
cBlue::Float,
cAlpha::Float
}
instance ComponentClass Colour where
toObj (Colour v1 v2 v3 v4) = ObjectArray [ObjectFloat v1, ObjectFloat v2, ObjectFloat v3, ObjectFloat v4]
fromObj (ObjectArray [ObjectFloat v1, ObjectFloat v2, ObjectFloat v3, ObjectFloat v4]) = Colour v1 v2 v3 v4
ctColour :: ComponentType Colour
ctColour = ComponentType 0xe202add0521cde41
white :: Colour
white = Colour 1.0 1.0 1.0 1.0
silver:: Colour
silver = Colour 0.75 0.75 0.75 1.0
grey:: Colour
grey = Colour 0.5 0.5 0.5 1.0
darkgrey :: Colour
darkgrey = Colour 0.25 0.25 0.25 1.0
black :: Colour
black = Colour 0.0 0.0 0.0 1.0
red :: Colour
red = Colour 1.0 0.0 0.0 1.0
maroon :: Colour
maroon = Colour 0.5 0.0 0.0 1.0
yellow :: Colour
yellow = Colour 1.0 1.0 0.0 1.0
olive :: Colour
olive = Colour 0.5 0.5 0.0 1.0
lime :: Colour
lime = Colour 0.0 1.0 0.0 1.0
green :: Colour
green = Colour 0.0 0.5 0.0 1.0
aqua :: Colour
aqua = Colour 0.0 1.0 1.0 1.0
teal :: Colour
teal = Colour 0.0 0.5 0.5 1.0
blue :: Colour
blue = Colour 0.0 0.0 1.0 1.0
navy :: Colour
navy = Colour 0.0 0.0 0.5 1.0
fuchsia :: Colour
fuchsia = Colour 1.0 0.0 1.0 1.0
purple :: Colour
purple = Colour 0.5 0.0 0.5 1.0