OpenGL-2.8.0.0: A binding for the OpenGL graphics system

Portability | portable
Stability | stable
Maintainer | sven.panne@aedion.de
Safe Haskell | None

Graphics.Rendering.OpenGL.GL.PerFragment

Contents

- Scissor Test
- Multisample Fragment Operations
- Depth Bounds Test
- Alpha Test
- Stencil Test
- Depth Buffer Test
- Blending
- Dithering
- Logical Operation
- for backward compatibility reasons

Description

This module corresponds to section 4.1 (Per-Fragment Operations) of the OpenGL 2.1 specs.

Synopsis

- scissor :: StateVar (Maybe (Position, Size))
- sampleAlphaToCoverage :: StateVar Capability
- sampleAlphaToOne :: StateVar Capability
- sampleCoverage :: StateVar (Maybe (GLclampf, Bool))
- depthBounds :: StateVar (Maybe (GLclampd, GLclampd))
- data ComparisonFunction
  - = Never
  - | Less
  - | Equal
  - | Lequal
  - | Greater
  - | Notequal
  - | Gequal
  - | Always
- alphaFunc :: StateVar (Maybe (ComparisonFunction, GLclampf))
- stencilTest :: StateVar Capability
- stencilFunc :: StateVar (ComparisonFunction, GLint, GLuint)
- stencilFuncSeparate :: Face -> SettableStateVar (ComparisonFunction, GLint, GLuint)
- data StencilOp
  - = OpZero
  - | OpKeep
  - | OpReplace
  - | OpIncr
  - | OpIncrWrap
  - | OpDecr
  - | OpDecrWrap
  - | OpInvert
- stencilOp :: StateVar (StencilOp, StencilOp, StencilOp)
- stencilOpSeparate :: Face -> SettableStateVar (StencilOp, StencilOp, StencilOp)
- activeStencilFace :: StateVar (Maybe Face)
- depthFunc :: StateVar (Maybe ComparisonFunction)
- blend :: StateVar Capability
- blendBuffer :: DrawBufferIndex -> StateVar Capability
- data BlendEquation
  - = FuncAdd
  - | FuncSubtract
  - | FuncReverseSubtract
  - | Min
  - | Max
  - | LogicOp
- blendEquation :: StateVar BlendEquation
- blendEquationSeparate :: StateVar (BlendEquation, BlendEquation)
- data BlendingFactor
  - = Zero
  - | One
  - | SrcColor
  - | OneMinusSrcColor
  - | DstColor
  - | OneMinusDstColor
  - | SrcAlpha
  - | OneMinusSrcAlpha
  - | DstAlpha
  - | OneMinusDstAlpha
  - | ConstantColor
  - | OneMinusConstantColor
  - | ConstantAlpha
  - | OneMinusConstantAlpha
  - | SrcAlphaSaturate
- blendFuncSeparate :: StateVar ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor))
- blendFunc :: StateVar (BlendingFactor, BlendingFactor)
- blendColor :: StateVar (Color4 GLclampf)
- dither :: StateVar Capability
- data LogicOp
  - = Clear
  - | And
  - | AndReverse
  - | Copy
  - | AndInverted
  - | Noop
  - | Xor
  - | Or
  - | Nor
  - | Equiv
  - | Invert
  - | OrReverse
  - | CopyInverted
  - | OrInverted
  - | Nand
  - | Set
- logicOp :: StateVar (Maybe LogicOp)
- module Graphics.Rendering.OpenGL.GL.QueryObjects

# Scissor Test

scissor :: StateVar (Maybe (Position, Size))Source

# Multisample Fragment Operations

sampleAlphaToCoverage :: StateVar Capability Source

sampleAlphaToOne :: StateVar Capability Source

sampleCoverage :: StateVar (Maybe (GLclampf, Bool))Source

# Depth Bounds Test

depthBounds :: StateVar (Maybe (GLclampd, GLclampd))Source

# Alpha Test

data ComparisonFunction Source

Constructors

Never |
Less |
Equal |
Lequal |
Greater |
Notequal |
Gequal |
Always |

Instances

Eq ComparisonFunction |
Ord ComparisonFunction |
Show ComparisonFunction |

alphaFunc :: StateVar (Maybe (ComparisonFunction, GLclampf))Source

# Stencil Test

stencilTest :: StateVar Capability Source

stencilFunc :: StateVar (ComparisonFunction, GLint, GLuint)Source

stencilFuncSeparate :: Face -> SettableStateVar (ComparisonFunction, GLint, GLuint)Source

data StencilOp Source

Constructors

OpZero |
OpKeep |
OpReplace |
OpIncr |
OpIncrWrap |
OpDecr |
OpDecrWrap |
OpInvert |

Instances

Eq StencilOp |
Ord StencilOp |
Show StencilOp |

stencilOp :: StateVar (StencilOp, StencilOp, StencilOp)Source

stencilOpSeparate :: Face -> SettableStateVar (StencilOp, StencilOp, StencilOp)Source

activeStencilFace :: StateVar (Maybe Face)Source

# Depth Buffer Test

depthFunc :: StateVar (Maybe ComparisonFunction)Source

# Blending

blend :: StateVar Capability Source

blendBuffer :: DrawBufferIndex -> StateVar Capability Source

enable or disable blending based on the buffer bound to the i'th drawBuffer that is the buffer fmap (!! i) (get drawBuffers)

data BlendEquation Source

Constructors

FuncAdd |
FuncSubtract |
FuncReverseSubtract |
Min |
Max |
LogicOp |

Instances

Eq BlendEquation |
Ord BlendEquation |
Show BlendEquation |

blendEquation :: StateVar BlendEquation Source

blendEquationSeparate :: StateVar (BlendEquation, BlendEquation)Source

data BlendingFactor Source

Constructors

Zero |
One |
SrcColor |
OneMinusSrcColor |
DstColor |
OneMinusDstColor |
SrcAlpha |
OneMinusSrcAlpha |
DstAlpha |
OneMinusDstAlpha |
ConstantColor |
OneMinusConstantColor |
ConstantAlpha |
OneMinusConstantAlpha |
SrcAlphaSaturate |

Instances

Eq BlendingFactor |
Ord BlendingFactor |
Show BlendingFactor |

blendFuncSeparate :: StateVar ((BlendingFactor, BlendingFactor), (BlendingFactor, BlendingFactor))Source

blendFunc :: StateVar (BlendingFactor, BlendingFactor)Source

blendColor :: StateVar (Color4 GLclampf)Source

# Dithering

dither :: StateVar Capability Source

# Logical Operation

data LogicOp Source

Constructors

Clear |
And |
AndReverse |
Copy |
AndInverted |
Noop |
Xor |
Or |
Nor |
Equiv |
Invert |
OrReverse |
CopyInverted |
OrInverted |
Nand |
Set |

Instances

Eq LogicOp |
Ord LogicOp |
Show LogicOp |

logicOp :: StateVar (Maybe LogicOp)Source

# for backward compatibility reasons

module Graphics.Rendering.OpenGL.GL.QueryObjects