Class GorgonPipelineState
A pipeline state object used to set up the complete graphics pipeline for Gorgon.
Inherited Members
Namespace: Gorgon.Graphics.Core
Assembly: Gorgon.Graphics.Core.dll
Syntax
public class GorgonPipelineState
Remarks
A pipeline state object is used to define the state of the pipeline prior to drawing anything. It can be used to assign shaders, and various other states that will affect how data is rasterized on the GPU.
The pipeline state object is immutable, and as such cannot be changed directly. To create a new pipeline state object, a GorgonPipelineStateBuilder must be used.
Pipeline states are assigned to a draw call via one of the draw call builders.
Properties
| Edit this page View SourceBlendStates
Property to return the list of blending states for each render target.
Declaration
public IGorgonReadOnlyArray<GorgonBlendState> BlendStates { get; }
Property Value
Type | Description |
---|---|
IGorgonReadOnlyArray<GorgonBlendState> |
See Also
| Edit this page View SourceDepthStencilState
Property to return the depth/stencil state for the pipeline.
Declaration
public GorgonDepthStencilState DepthStencilState { get; }
Property Value
Type | Description |
---|---|
GorgonDepthStencilState |
See Also
| Edit this page View SourceDomainShader
Property to return the domain shader.
Declaration
public GorgonDomainShader DomainShader { get; }
Property Value
Type | Description |
---|---|
GorgonDomainShader |
See Also
| Edit this page View SourceGeometryShader
Property to return the geometry shader.
Declaration
public GorgonGeometryShader GeometryShader { get; }
Property Value
Type | Description |
---|---|
GorgonGeometryShader |
See Also
| Edit this page View SourceHullShader
Property to return the hull shader.
Declaration
public GorgonHullShader HullShader { get; }
Property Value
Type | Description |
---|---|
GorgonHullShader |
See Also
| Edit this page View SourceID
Property to return the ID of the pipeline state.
Declaration
public int ID { get; }
Property Value
Type | Description |
---|---|
int |
Remarks
This is used to store a globally cached version of the pipeline state.
See Also
| Edit this page View SourceIsAlphaToCoverageEnabled
Property to return whether alpha to coverage is enabled or not for blending.
Declaration
public bool IsAlphaToCoverageEnabled { get; }
Property Value
Type | Description |
---|---|
bool |
Remarks
This will use alpha to coverage as a multisampling technique when writing a pixel to a render target. Alpha to coverage is useful in situations where there are multiple overlapping polygons that use transparency to define edges.
The default value is false.
See Also
| Edit this page View SourceIsIndependentBlendingEnabled
Property to return whether independent render target blending is enabled or not.
Declaration
public bool IsIndependentBlendingEnabled { get; }
Property Value
Type | Description |
---|---|
bool |
Remarks
This will specify whether to use different blending states for each render target. When this value is set to true, each render target blend state will be independent of other render target blend states. When this value is set to false, then only the blend state of the first render target is used.
The default value is false.
See Also
| Edit this page View SourcePixelShader
Property to return the pixel shader.
Declaration
public GorgonPixelShader PixelShader { get; }
Property Value
Type | Description |
---|---|
GorgonPixelShader |
See Also
| Edit this page View SourcePrimitiveType
Property to return the topology for a primitive.
Declaration
public PrimitiveType PrimitiveType { get; }
Property Value
Type | Description |
---|---|
PrimitiveType |
See Also
| Edit this page View SourceRasterState
Property to return the rasterizer state for the pipeline.
Declaration
public GorgonRasterState RasterState { get; }
Property Value
Type | Description |
---|---|
GorgonRasterState |
See Also
| Edit this page View SourceVertexShader
Property to return the vertex shader.
Declaration
public GorgonVertexShader VertexShader { get; }
Property Value
Type | Description |
---|---|
GorgonVertexShader |