ombra-1.0.0.0: Render engine.

Safe HaskellNone
LanguageHaskell2010

Graphics.Rendering.Ombra.OutBuffer

Contents

Synopsis

Documentation

type GBuffer = OutBuffer Source #

A container that can be used to store the output of some drawing operation.

type DepthBuffer t = OutBuffer t OutDepthBuffer Source #

A container for depth/stencil values.

type GBufferInfo = OutBufferInfo Source #

type DepthBufferInfo = OutBufferInfo OutDepthBuffer Source #

data GBufferSampler t o Source #

A GPU object that can be used to retrieve data from a GBuffer.

Instances

FragmentShaderOutput o => Uniform (GBufferSampler t o) Source # 

Associated Types

type CPUUniform (GBufferSampler t o) :: * Source #

Methods

foldrUniform :: Proxy * (GBufferSampler t o) -> (UniformValue -> b -> b) -> b -> CPUUniform (GBufferSampler t o) -> b Source #

FragmentShaderOutput o => ShaderInput (GBufferSampler t o) Source # 

Methods

buildMST :: (forall x. ShaderType x => Int -> x) -> Int -> (GBufferSampler t o, Int) Source #

FragmentShaderOutput o => MultiShaderType (GBufferSampler t o) Source # 

Associated Types

type ExprMST (GBufferSampler t o) :: * Source #

Methods

mapMST :: (forall x. ShaderType x => x -> x) -> GBufferSampler t o -> GBufferSampler t o Source #

foldrMST :: (forall x. ShaderType x => x -> b -> b) -> b -> GBufferSampler t o -> b Source #

toExprMST :: GBufferSampler t o -> ExprMST (GBufferSampler t o) Source #

fromExprMST :: ExprMST (GBufferSampler t o) -> GBufferSampler t o Source #

type CPUUniform (GBufferSampler t o) Source # 
type ExprMST (GBufferSampler t o) Source # 

data DepthBufferSampler t Source #

A GPU object that can be used to retrieve data from a DepthBuffer.

Instances

Uniform (DepthBufferSampler t) Source # 

Associated Types

type CPUUniform (DepthBufferSampler t) :: * Source #

Methods

foldrUniform :: Proxy * (DepthBufferSampler t) -> (UniformValue -> b -> b) -> b -> CPUUniform (DepthBufferSampler t) -> b Source #

ShaderInput (DepthBufferSampler t) Source # 

Methods

buildMST :: (forall x. ShaderType x => Int -> x) -> Int -> (DepthBufferSampler t, Int) Source #

MultiShaderType (DepthBufferSampler t) Source # 

Associated Types

type ExprMST (DepthBufferSampler t) :: * Source #

Methods

mapMST :: (forall x. ShaderType x => x -> x) -> DepthBufferSampler t -> DepthBufferSampler t Source #

foldrMST :: (forall x. ShaderType x => x -> b -> b) -> b -> DepthBufferSampler t -> b Source #

toExprMST :: DepthBufferSampler t -> ExprMST (DepthBufferSampler t) Source #

fromExprMST :: ExprMST (DepthBufferSampler t) -> DepthBufferSampler t Source #

type CPUUniform (DepthBufferSampler t) Source # 
type ExprMST (DepthBufferSampler t) Source # 

sampleGBuffer :: GBufferSampler t o -> GVec2 -> o Source #

Sample a value from a GBufferSampler.

Conversion between buffers and textures