Instance Method

useResources(_:usage:)

Adds an array of untracked resources to the render pass.

Declaration

func useResources(_ resources: [MTLResource], usage: MTLResourceUsage)

Parameters

resources

An array of resources within an argument buffer.

usage

Options for describing how a graphics function uses the resources.

Discussion

This method makes the array of resources resident for the duration of the render pass and ensures that it's in a format compatible with the graphics function.

Call this method before issuing any draw calls that may access the array of resources. Calling this method again, or calling useHeap(_:), overwrites any previously specified usage options for future draw calls within the same render command encoder.

When working with color render targets, call this method as late as possible to improve performance.

See Also

Specifying Resource Usage for Argument Buffers

func use(MTLResource, usage: MTLResourceUsage, stages: MTLRenderStages)

Adds an untracked resource to the render pass, specifying which render stages need it.

Required.

func use(UnsafePointer<MTLResource>, count: Int, usage: MTLResourceUsage, stages: MTLRenderStages)

Adds an array of untracked resources to the render pass, specifying which stages need them.

Required.

func use(MTLHeap, stages: MTLRenderStages)

Adds the resources in a heap to the render pass, specifying which render stages need them.

Required.

func use(UnsafePointer<MTLHeap>, count: Int, stages: MTLRenderStages)

Adds the resources in an array of heaps to the render pass, specifying which render stages need them.

Required.

func useResource(MTLResource, usage: MTLResourceUsage)

Adds an untracked resource to the render pass.

Required.

func useHeap(MTLHeap)

Adds the resources in a heap to the render pass.

Required.

func useHeaps([MTLHeap])

Adds the resources in an array of heaps to the render pass.

struct MTLResourceUsage

The options that describe how a resource within an argument buffer will be used in a graphics or compute function.