Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
- class ShaderType t where
- data Expr
- newtype Float = Float Expr
- newtype Sampler2D = Sampler2D Expr
- data V2 = V2 Float Float
- data V3 = V3 Float Float Float
- data V4 = V4 Float Float Float Float
- data M2 = M2 V2 V2
- data M3 = M3 V3 V3 V3
- data M4 = M4 V4 V4 V4 V4
- fromRational :: Rational -> Float
- fromInteger :: Integer -> Float
- negate :: Float -> Float
- class Mul a b c | a b -> c
- (*) :: (Mul a b c, ShaderType a, ShaderType b, ShaderType c) => a -> b -> c
- (/) :: (Mul a b c, ShaderType a, ShaderType b, ShaderType c) => a -> b -> c
- class Sum a
- (+) :: (Sum a, ShaderType a) => a -> a -> a
- (-) :: (Sum a, ShaderType a) => a -> a -> a
- (^) :: (ShaderType a, ShaderType b) => a -> b -> a
- (&&) :: Bool -> Bool -> Bool
- (||) :: Bool -> Bool -> Bool
- (==) :: ShaderType a => a -> a -> Bool
- (>=) :: ShaderType a => a -> a -> Bool
- (<=) :: ShaderType a => a -> a -> Bool
- (<) :: ShaderType a => a -> a -> Bool
- (>) :: ShaderType a => a -> a -> Bool
- abs :: Float -> Float
- sign :: Float -> Float
- texture2D :: Sampler2D -> V2 -> V4
- sqrt :: Float -> Float
Documentation
class ShaderType t where
A type in the GPU.
data Expr
newtype Float
A GPU float.
Sum Float | |
ShaderType Float | |
Typeable * Float | |
GLES => AttributeCPU Float Float | |
GLES => UniformCPU Float Float | |
Mul M4 Float M4 | |
Mul M3 Float M3 | |
Mul M2 Float M2 | |
Mul V4 Float V4 | |
Mul V3 Float V3 | |
Mul V2 Float V2 | |
Mul Float M4 M4 | |
Mul Float M3 M3 | |
Mul Float M2 M2 | |
Mul Float V4 V4 | |
Mul Float V3 V3 | |
Mul Float V2 V2 | |
Mul Float Float Float |
newtype Sampler2D
A GPU sampler (sampler2D in GLSL).
data V3
A GPU 3D vector.
data V4
A GPU 4D vector.
data M2
A GPU 2x2 matrix.
data M3
A GPU 3x3 matrix.
data M4
A GPU 4x4 matrix.
fromRational :: Rational -> Float
fromInteger :: Integer -> Float
class Mul a b c | a b -> c
Types that can be multiplied.
Mul M4 M4 M4 | |
Mul M4 V4 V4 | |
Mul M4 Float M4 | |
Mul M3 M3 M3 | |
Mul M3 V3 V3 | |
Mul M3 Float M3 | |
Mul M2 M2 M2 | |
Mul M2 V2 V2 | |
Mul M2 Float M2 | |
Mul V4 M4 V4 | |
Mul V4 V4 V4 | |
Mul V4 Float V4 | |
Mul V3 M3 V3 | |
Mul V3 V3 V3 | |
Mul V3 Float V3 | |
Mul V2 M2 V2 | |
Mul V2 V2 V2 | |
Mul V2 Float V2 | |
Mul Float M4 M4 | |
Mul Float M3 M3 | |
Mul Float M2 M2 | |
Mul Float V4 V4 | |
Mul Float V3 V3 | |
Mul Float V2 V2 | |
Mul Float Float Float |
(*) :: (Mul a b c, ShaderType a, ShaderType b, ShaderType c) => a -> b -> c infixl 7
(/) :: (Mul a b c, ShaderType a, ShaderType b, ShaderType c) => a -> b -> c infixl 7
(+) :: (Sum a, ShaderType a) => a -> a -> a infixl 6
(-) :: (Sum a, ShaderType a) => a -> a -> a infixl 6
(^) :: (ShaderType a, ShaderType b) => a -> b -> a infixr 8
(&&) :: Bool -> Bool -> Bool infixr 3
(||) :: Bool -> Bool -> Bool infixr 2
(==) :: ShaderType a => a -> a -> Bool infix 4
(>=) :: ShaderType a => a -> a -> Bool infix 4
(<=) :: ShaderType a => a -> a -> Bool infix 4
(<) :: ShaderType a => a -> a -> Bool infix 4
(>) :: ShaderType a => a -> a -> Bool infix 4