module Graphics.Rendering.Ombra.Layer.Internal where
import Data.Word (Word8)
import Graphics.Rendering.Ombra.Color
import Graphics.Rendering.Ombra.Internal.TList
import Graphics.Rendering.Ombra.Object.Internal
import Graphics.Rendering.Ombra.Shader.Program
import Graphics.Rendering.Ombra.Texture
data Layer = forall oi pi og pg. (Subset pi oi, Subset pg og)
=> Layer (Program pg pi) (Object og oi)
| SubLayer (RenderLayer Layer)
| OverLayer Layer Layer
| ClearLayer [Buffer] Layer
data Buffer = ColorBuffer | DepthBuffer | StencilBuffer
data RenderLayer a = RenderLayer Bool
[LayerType]
Int Int
Int Int Int Int
Bool Bool
Layer
([Texture] -> Maybe [Color] ->
Maybe [Word8] -> a)
data LayerType = ColorLayer
| DepthLayer
| DepthStencilLayer
| BufferLayer Int deriving Eq