Skip to content

GraphicsAPI reference

Class PipelineDescription

Namespace: MicroEngine.Graphics.Devices
Assembly: MicroEngine.Graphics.dll
Guide: The graphics device

A custom pipeline: requires Shaders. The pipeline is bound to the attachment formats it renders to: a pass accepts it only when its colour format equals ColorFormat and its depth attachment format equals DepthFormat (null = the pass has no depth attachment).

C#
public sealed record PipelineDescription : IEquatable<PipelineDescription>

Inheritance

object ← PipelineDescription

Implements

IEquatable<PipelineDescription>

Constructors

PipelineDescription(Shader, Shader, VertexLayout, BlendState, DepthState, RasterState, TextureFormat, TextureFormat?)

A custom pipeline: requires Shaders. The pipeline is bound to the attachment formats it renders to: a pass accepts it only when its colour format equals ColorFormat and its depth attachment format equals DepthFormat (null = the pass has no depth attachment).

C#
public PipelineDescription(Shader Vertex, Shader Fragment, VertexLayout Layout, BlendState Blend, DepthState Depth, RasterState Raster, TextureFormat ColorFormat, TextureFormat? DepthFormat)

Parameters

Vertex Shader

Vertex shader.

Fragment Shader

Fragment shader.

Layout VertexLayout

Vertex layout.

Blend BlendState

Blend state (any state: tier 1 declares CustomBlend).

Depth DepthState

Depth state; anything but None requires a DepthFormat.

Raster RasterState

Rasterizer state.

ColorFormat TextureFormat

Format of the colour attachment.

DepthFormat TextureFormat?

Format of the depth attachment, or null.

Properties

Blend

Blend state (any state: tier 1 declares CustomBlend).

C#
public BlendState Blend { get; init; }

Property Value

BlendState

ColorFormat

Format of the colour attachment.

C#
public TextureFormat ColorFormat { get; init; }

Property Value

TextureFormat

Depth

Depth state; anything but None requires a DepthFormat.

C#
public DepthState Depth { get; init; }

Property Value

DepthState

DepthFormat

Format of the depth attachment, or null.

C#
public TextureFormat? DepthFormat { get; init; }

Property Value

TextureFormat?

Fragment

Fragment shader.

C#
public Shader Fragment { get; init; }

Property Value

Shader

Layout

Vertex layout.

C#
public VertexLayout Layout { get; init; }

Property Value

VertexLayout

Raster

Rasterizer state.

C#
public RasterState Raster { get; init; }

Property Value

RasterState

Vertex

Vertex shader.

C#
public Shader Vertex { get; init; }

Property Value

Shader

Methods

<Clone>$()

C#
public PipelineDescription <Clone>$()

Returns

PipelineDescription

Deconstruct(out Shader, out Shader, out VertexLayout, out BlendState, out DepthState, out RasterState, out TextureFormat, out TextureFormat?)

C#
public void Deconstruct(out Shader Vertex, out Shader Fragment, out VertexLayout Layout, out BlendState Blend, out DepthState Depth, out RasterState Raster, out TextureFormat ColorFormat, out TextureFormat? DepthFormat)

Parameters

Vertex Shader

Fragment Shader

Layout VertexLayout

Blend BlendState

Depth DepthState

Raster RasterState

ColorFormat TextureFormat

DepthFormat TextureFormat?

Equals(object?)

C#
public override bool Equals(object? obj)

Parameters

obj object?

Returns

bool

Equals(PipelineDescription?)

C#
public bool Equals(PipelineDescription? other)

Parameters

other PipelineDescription?

Returns

bool

GetHashCode()

C#
public override int GetHashCode()

Returns

int

ToString()

C#
public override string ToString()

Returns

string

Operators

operator ==(PipelineDescription?, PipelineDescription?)

C#
public static bool operator ==(PipelineDescription? left, PipelineDescription? right)

Parameters

left PipelineDescription?

right PipelineDescription?

Returns

bool

operator !=(PipelineDescription?, PipelineDescription?)

C#
public static bool operator !=(PipelineDescription? left, PipelineDescription? right)

Parameters

left PipelineDescription?

right PipelineDescription?

Returns

bool