ombra-0.1.1.0: Render engine.

Safe HaskellNone
LanguageHaskell2010

Graphics.Rendering.Ombra.Shader.Program

Synopsis

Documentation

type Compatible pgs vgs fgs = EqualOrErr pgs (Union vgs fgs) ((((Text "Incompatible shader uniforms" :$$: (Text " Vertex shader uniforms: " :<>: ShowType vgs)) :$$: (Text " Fragment shader uniforms: " :<>: ShowType fgs)) :$$: (Text " United shader uniforms: " :<>: ShowType (Union vgs fgs))) :$$: (Text " Program uniforms: " :<>: ShowType pgs)) Source #

Compatible shaders.

data Program gs is Source #

A vertex shader associated with a compatible fragment shader.

Instances

Eq (Program gs is) Source # 

Methods

(==) :: Program gs is -> Program gs is -> Bool #

(/=) :: Program gs is -> Program gs is -> Bool #

Hashable (Program gs is) Source # 

Methods

hashWithSalt :: Int -> Program gs is -> Int #

hash :: Program gs is -> Int #

program :: (ShaderVars vgs, ShaderVars vis, VOShaderVars os, ShaderVars fgs, Compatible pgs vgs fgs) => VertexShader vgs vis os -> FragmentShader fgs os -> Program pgs vis Source #

Create a Program from the shaders.

castProgram :: Program gs is -> Program gs' is' Source #

type DefaultUniforms2D = Uniforms Source #

The uniforms used in the default 2D program.

type DefaultAttributes2D = Attributes Source #

The attributes used in the default 2D program.

type DefaultUniforms3D = Uniforms Source #

The uniforms used in the default 3D program.

type DefaultAttributes3D = Attributes Source #

The attributes used in the default 3D program.