Instance Method

setTileBuffer:offset:atIndex:

Sets a buffer for the tile function at an index in the buffer argument table.

Required.

Declaration

- (void)setTileBuffer:(id<MTLBuffer>)buffer offset:(NSUInteger)offset atIndex:(NSUInteger)index;

Parameters

buffer

The buffer to set in the argument table.

offset

How far the data is, in bytes, from the start of the buffer.

index

The index in the buffer argument table.

Discussion

For buffers in the address space, the offset must be aligned to the data type consumed by the tile shader (which is always less than or equal to 16 bytes).

For buffers in the address space, the offset must be aligned to 256 bytes in macOS. In iOS, the offset must be aligned to the maximum of either the data type consumed by the tile shader, or 4 bytes. A 16-byte alignment is safe in iOS if you don't need to consider the data type.

See Also

Specifying Resources for a Tile Function

- setThreadgroupMemoryLength:offset:atIndex:

Sets the size of a threadgroup memory buffer for the tile function at an index in the argument table.

Required.

- setTileBuffers:offsets:withRange:

Sets an array of buffers for the tile function in a range of indices in the buffer argument table.

Required.

- setTileBufferOffset:atIndex:

Sets an offset specifying the start of the data for a buffer already bound to the tile function.

Required.

- setTileBytes:length:atIndex:

Sets a block of data for the tile function at an index in the buffer argument table.

Required.

- setTileSamplerState:atIndex:

Sets a sampler state for the tile function at an index in the sampler state argument table.

Required.

- setTileSamplerState:lodMinClamp:lodMaxClamp:atIndex:

Sets a sampler state for the tile function at an index in the sampler state argument table, specifying clamp values for the level of detail.

Required.

- setTileSamplerStates:withRange:

Sets a sampler state for the tile function in a range of indices in the sampler state argument table, specifying clamp values for the minimum and maximum level of detail.

Required.

- setTileSamplerStates:lodMinClamps:lodMaxClamps:withRange:

Sets an array of sampler states for the tile function in a range of indices in the sampler state argument table, specifying clamp values for the minimum and maximum level of detail.

Required.

- setTileTexture:atIndex:

Sets a texture for the tile function at an index in the texture argument table.

Required.

- setTileTextures:withRange:

Sets an array of textures for the tile function in a range of indices in the texture argument table.

Required.