iOS Guides | Samples

MetalKit Namespace

Provides higher-level classes for writing applications that use Metal for rendering.


The MetalKit namespace provides higher-level classes to handle:

TextureLoader Simplifies loading texture data.
Mesh, Submesh, MeshBuffer Higher-level mesh manipulation.
MTKView A Metal-aware UIView.


IMTKViewDelegateInterface representing the required methods (if any) of the protocol MTKViewDelegate.
MTKMeshHolds vertex data for rendering with Metal.
MTKMeshBufferA Metal buffer for holding vertex and index data for ModelIO meshes and submeshes.
MTKMeshBufferAllocatorAn IMDLMeshBufferAllocator that allocates a MTKMeshBuffer suitable for use with MDLAsset objects.
MTKModelStatic class that contains MetalKit constants related to MetalKit Model errors.
MTKSubmeshA segment of mesh data that can be rendered in a single draw call. Submesh vertex data is held in the parent MTKMesh.
MTKTextureLoaderCreates IMTLTexture objects from common image formats.
MTKTextureLoaderCallbackCompletion handler for textures loaded with MTKTextureLoader.
MTKTextureLoaderErrorKey and domain strings for working with texture loading errors.
MTKTextureLoaderOptionsContains a dictionary of texture loading options and exposes them as discoverably named properties.
MTKViewA UIView that is Metal-aware.
MTKView+MTKViewAppearanceAppearance class for objects of type MTKView.
MTKViewDelegateDelegate object for MTKView objects. Provides methods called when the view is drawn and laid out.