makeTextureView(pixelFormat: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
func makeTextureView(pixelFormat: MTLPixelFormat, textureType: MTLTextureType, levels levelRange: Range<Int>, slices sliceRange: Range<Int>, swizzle: MTLTextureSwizzleChannels) -> (any MTLTexture)?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.
Discussion
For more information on texture views, see makeTextureView(pixelFormat: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].