Contents

newTextureViewWithPixelFormat:textureType:levels:slices:swizzle:

Creates a new view of the texture, reinterpreting a subset of its data using a different type, pixel format, and swizzle pattern.

Declaration

- (id<MTLTexture>) newTextureViewWithPixelFormat:(MTLPixelFormat) pixelFormat textureType:(MTLTextureType) textureType levels:(NSRange) levelRange slices:(NSRange) sliceRange swizzle:(MTLTextureSwizzleChannels) swizzle;

Parameters

  • pixelFormat:

    A new pixel format, which needs to be compatible with the original pixel format.

  • textureType:

    A new texture type.

  • levelRange:

    A new base level range that restricts which mipmap levels are visible in the new texture.

  • sliceRange:

    A new base slice range that restricts which array slices are visible in the new texture.

  • swizzle:

    The swizzle pattern the GPU uses to reorder the data when sampling or reading the texture.

Return Value

A new texture view.

Discussion

For more information on texture views, see newTextureViewWithPixelFormat:textureType:levels:slices:.

The swizzle pattern of the view is combined with that of the parent texture to generate the final swizzle pattern. For example: An [R,G,A,B] swizzle of a texture with a [R,1,1,G] swizzle pattern is [R,1,G,1].

See Also

Creating textures by reinterpreting existing texture data