Structure

MTLTextureSwizzleChannels

A pattern that modifies the data read or sampled from a texture by rearranging or duplicating the elements of a vector.

Declaration

typedef struct {
    ...
} MTLTextureSwizzleChannels;

Overview

Use this structure to specify a custom swizzle pattern when creating a new texture or texture view.

Topics

Specifying Swizzle Values

red

The data copied to the first output channel.

green

The data copied to the second output channel.

blue

The data copied to the third output channel.

alpha

The data copied to the fourth output channel.

See Also

Specifying Texture Attributes

textureType

The dimension and arrangement of texture image data.

pixelFormat

The size and bit layout of all pixels in the texture.

width

The width of the texture image for the base level mipmap, in pixels.

height

The height of the texture image for the base level mipmap, in pixels.

depth

The depth of the texture image for the base level mipmap, in pixels.

mipmapLevelCount

The number of mipmap levels for this texture.

sampleCount

The number of samples in each fragment.

arrayLength

The number of array elements for this texture.

resourceOptions

The behavior of a new memory allocation.

cpuCacheMode

The CPU cache mode used for the CPU mapping of the texture.

storageMode

The location and access permissions of the texture.

hazardTrackingMode

The texture's hazard tracking mode.

allowGPUOptimizedContents

A Boolean value indicating whether the GPU is allowed to adjust the texture's contents to improve GPU performance.

usage

Options that determine how you can use the texture.

swizzle

The pattern you want the GPU to apply to pixels when you read or sample pixels from the texture.

MTLTextureSwizzleChannelsMake

Creates a new swizzle pattern.

MTLTextureSwizzle

A set of options to choose from when creating a texture swizzle pattern.