module Graphics.Luminance.Core.RenderCmd where
import Graphics.Luminance.Core.Blending
import Graphics.Luminance.Core.Shader.Uniform ( U(..) )
data RenderCmd rw c d u a = RenderCmd (Maybe (BlendingMode,BlendingFactor,BlendingFactor)) Bool (U u) u a
instance Functor (RenderCmd rw c d u) where
fmap f (RenderCmd blending depthTest uni u a) = RenderCmd blending depthTest uni u (f a)
renderCmd :: Maybe (BlendingMode,BlendingFactor,BlendingFactor)
-> Bool
-> U u
-> u
-> a
-> RenderCmd rw c d u a
renderCmd = RenderCmd
stdRenderCmd :: U u -> u -> a -> RenderCmd rw c d u a
stdRenderCmd = RenderCmd Nothing True