Table of Contents

Class Buffer.Structured

Namespace
Stride.Graphics
Assembly
Stride.Graphics.dll

Structured buffer helper methods.

public static class Buffer.Structured
Inheritance
Buffer.Structured

Remarks

Example in HLSL: StructuredBuffer<float4> or RWStructuredBuffer<float4> for structured buffers supporting unordered access.

Methods

New(GraphicsDevice, DataPointer, int, bool)

Creates a new Structured buffer Default usage.

[Obsolete("Use span instead")]
public static Buffer New(GraphicsDevice device, DataPointer value, int elementSize, bool isUnorderedAccess = false)

Parameters

device GraphicsDevice

The GraphicsDevice.

value DataPointer

The value to initialize the Structured buffer.

elementSize int

Size of the element.

isUnorderedAccess bool

if set to true this buffer supports unordered access (RW in HLSL).

Returns

Buffer

A Structured buffer

New(GraphicsDevice, int, int, bool)

Creates a new Structured buffer accessible as a ShaderResourceView and optionally as a UnorderedAccessView.

public static Buffer New(GraphicsDevice device, int count, int elementSize, bool isUnorderedAccess = false)

Parameters

device GraphicsDevice

The GraphicsDevice.

count int

The number of element in this buffer.

elementSize int

Size of the struct.

isUnorderedAccess bool

if set to true this buffer supports unordered access (RW in HLSL).

Returns

Buffer

A Structured buffer

New(GraphicsDevice, ReadOnlySpan<byte>, int, bool)

Creates a new Structured buffer Default usage.

public static Buffer New(GraphicsDevice device, ReadOnlySpan<byte> value, int elementSize, bool isUnorderedAccess = false)

Parameters

device GraphicsDevice

The GraphicsDevice.

value ReadOnlySpan<byte>

The value to initialize the Structured buffer.

elementSize int

Size of the element.

isUnorderedAccess bool

if set to true this buffer supports unordered access (RW in HLSL).

Returns

Buffer

A Structured buffer

New<T>(GraphicsDevice, int, bool)

Creates a new Structured buffer accessible as a ShaderResourceView and optionally as a UnorderedAccessView.

public static Buffer<T> New<T>(GraphicsDevice device, int count, bool isUnorderedAccess = false) where T : unmanaged

Parameters

device GraphicsDevice

The GraphicsDevice.

count int

The number of element in this buffer.

isUnorderedAccess bool

if set to true this buffer supports unordered access (RW in HLSL).

Returns

Buffer<T>

A Structured buffer

Type Parameters

T

Type of the element in the structured buffer

New<T>(GraphicsDevice, T[], bool)

Creates a new Structured buffer Default usage.

public static Buffer<T> New<T>(GraphicsDevice device, T[] value, bool isUnorderedAccess = false) where T : unmanaged

Parameters

device GraphicsDevice

The GraphicsDevice.

value T[]

The value to initialize the Structured buffer.

isUnorderedAccess bool

if set to true this buffer supports unordered access (RW in HLSL).

Returns

Buffer<T>

A Structured buffer

Type Parameters

T

Type of the Structured buffer to get the sizeof from