Table of Contents

Struct ComputePipelineDescription

Namespace
NeoVeldrid
Assembly
NeoVeldrid.dll

Describes a compute Pipeline, for creation using a ResourceFactory.

public struct ComputePipelineDescription : IEquatable<ComputePipelineDescription>
Implements
Inherited Members

Constructors

ComputePipelineDescription(Shader, ResourceLayout, uint, uint, uint)

Constructs a new ComputePipelineDescription.

public ComputePipelineDescription(Shader shaderStage, ResourceLayout resourceLayout, uint threadGroupSizeX, uint threadGroupSizeY, uint threadGroupSizeZ)

Parameters

shaderStage Shader

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

resourceLayout ResourceLayout

The resource layout available to the Pipeline.

threadGroupSizeX uint

The X dimension of the thread group size.

threadGroupSizeY uint

The Y dimension of the thread group size.

threadGroupSizeZ uint

The Z dimension of the thread group size.

ComputePipelineDescription(Shader, ResourceLayout, uint, uint, uint, SpecializationConstant[])

Constructs a new ComputePipelineDescription.

public ComputePipelineDescription(Shader shaderStage, ResourceLayout resourceLayout, uint threadGroupSizeX, uint threadGroupSizeY, uint threadGroupSizeZ, SpecializationConstant[] specializations)

Parameters

shaderStage Shader

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

resourceLayout ResourceLayout

The resource layout available to the Pipeline.

threadGroupSizeX uint

The X dimension of the thread group size.

threadGroupSizeY uint

The Y dimension of the thread group size.

threadGroupSizeZ uint

The Z dimension of the thread group size.

specializations SpecializationConstant[]

An array of SpecializationConstant used to override specialization constants in the created Pipeline. Each element in this array describes a single ID-value pair, which will be matched with the constants specified in the Shader.

ComputePipelineDescription(Shader, ResourceLayout[], uint, uint, uint)

Constructs a new ComputePipelineDescription.

public ComputePipelineDescription(Shader computeShader, ResourceLayout[] resourceLayouts, uint threadGroupSizeX, uint threadGroupSizeY, uint threadGroupSizeZ)

Parameters

computeShader Shader

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

resourceLayouts ResourceLayout[]

The set of resource layouts available to the Pipeline.

threadGroupSizeX uint

The X dimension of the thread group size.

threadGroupSizeY uint

The Y dimension of the thread group size.

threadGroupSizeZ uint

The Z dimension of the thread group size.

Fields

ComputeShader

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

public Shader ComputeShader

Field Value

Shader

ResourceLayouts

An array of ResourceLayout, which controls the layout of shader resoruces in the Pipeline.

public ResourceLayout[] ResourceLayouts

Field Value

ResourceLayout[]

Specializations

An array of SpecializationConstant used to override specialization constants in the created Pipeline. Each element in this array describes a single ID-value pair, which will be matched with the constants specified in the Shader.

public SpecializationConstant[] Specializations

Field Value

SpecializationConstant[]

ThreadGroupSizeX

The X dimension of the thread group size.

public uint ThreadGroupSizeX

Field Value

uint

ThreadGroupSizeY

The Y dimension of the thread group size.

public uint ThreadGroupSizeY

Field Value

uint

ThreadGroupSizeZ

The Z dimension of the thread group size.

public uint ThreadGroupSizeZ

Field Value

uint

Methods

Equals(ComputePipelineDescription)

Element-wise equality.

public bool Equals(ComputePipelineDescription other)

Parameters

other ComputePipelineDescription

The instance to compare to.

Returns

bool

True if all elements and all array elements are equal; false otherswise.

GetHashCode()

Returns the hash code for this instance.

public override int GetHashCode()

Returns

int

A 32-bit signed integer that is the hash code for this instance.