Class

MTLIndirectCommandBufferDescriptor

An object that configures new MTLIndirectCommandBuffer objects.

Declaration

class MTLIndirectCommandBufferDescriptor : NSObject

Topics

Declaring Command Types to Encode

var commandTypes: MTLIndirectCommandType

The set of command types that you can encode into the indirect command buffer.

struct MTLIndirectCommandType

The types of commands that you can encode into the indirect command buffer.

Declaring Command Inheritance

var inheritBuffers: Bool

A Boolean value that determines where commands in the indirect command buffer get their buffer arguments from when you execute them.

var inheritPipelineState: Bool

A Boolean value that determines where commands in the indirect command buffer get their pipeline state from when you execute them.

Declaring the Maximum Number of Argument Buffers Per Command

var maxVertexBufferBindCount: Int

The maximum number of argument buffers that you can set per command for the vertex stage.

var maxFragmentBufferBindCount: Int

The maximum number of argument buffers that you can set per command for the fragment stage.

var maxKernelBufferBindCount: Int

The maximum number of argument buffers that you can set per command for the compute kernel.

Relationships

Inherits From

Conforms To

See Also

Essentials

Creating an Indirect Command Buffer

Configure a descriptor to specify the properties of an indirect command buffer.

protocol MTLIndirectCommandBuffer

A command buffer containing reusable commands, encoded either on the CPU or GPU.

protocol MTLIndirectRenderCommand

A render command in an indirect command buffer.

protocol MTLIndirectComputeCommand

A compute command in an indirect command buffer.

struct MTLIndirectCommandBufferExecutionRange

A range of commands in an indirect command buffer.