GpuBufferFlags

Description

[Flags]
enum Tinman.Terrain.Rendering.GpuBufferFlags

Enumeration of behaviour flags for IGpuBuffer objects.

Public / Constants

None

public constant None → (0:int32)

No GPU buffer flags.

Non-static buffers have the resource access pattern ResourceAccessPattern.Dynamic with indirect CPU write access via deferred copying, unless the Map flag has been specified at creation time.

Map

public constant Map → (1:int32)

CPU write access of the buffer content shall be direct, via memory mapping.

Buffers created with this flag have the ResourceAccessPattern.Mappable resource access pattern, which affects the semantic of buffer updates. See IGpuBuffer for details.

Draw

public constant Draw → (2:int32)

Does the buffer hold arguments for indirect drawing of primitives that have been generated by a GPU program?

When this flag is present, the given element size must either be zero or must be equal to or greater than the actual element size of the implementation-specific draw buffer layout.

Work

public constant Work → (4:int32)

Does the buffer hold arguments for indirect dispatching of computational work that has been generated by a GPU program?

When this flag is present, the given element size must either be zero or must be equal to or greater than the actual element size of the implementation-specific work buffer layout.

Mesh

public constant Mesh → (8:int32)

Does the buffer hold arguments for indirect dispatching of mesh rendering work that has been generated by a GPU program?

When this flag is present, the given element size must either be zero or must be equal to or greater than the actual element size of the implementation-specific mesh buffer layout.

All

public constant All → (15:int32)

All flags.