Metal for Developers
Metal provides the lowest-overhead access to the GPU, enabling you to maximize the graphics and compute potential of your apps on iOS, OS X, and tvOS. With a streamlined API, precompiled shaders, and support for efficient multi-threading, Metal can take your game or app to the next level of performance and capability.
Documentation
- MetalKit Framework Reference The MetalKit framework makes it even easier to integrate Metal into your apps by providing essential APIs for controlling drawing and loading graphic assets.
- Metal Performance Shaders Framework Reference This framework contains a collection of optimized compute and graphics shaders that can be easily and efficiently integrated into your app.
- Metal Programming Guide Learn the fundamental concepts of Metal and see how to set hardware state, submit commands, manage buffers and texture objects, and more.
- Metal Shading Language Guide See how to use the Metal unified graphics and compute shading language to write code that is executed on the GPU.
- Metal Framework Reference Find the classes and APIs for using Metal in your game.
Sample Code
- MetalKitEssentials Shows how to use MetalKit View, Texture Loader, and Model I/O.
- MetalPerformanceShadersHelloWorld An Introduction to the MetalPerformanceShaders framework.
- MetalVideoCapture Stream captured video textures from an iOS device's camera into a 3D scene rendered with Metal.
- MetalBasic3D Renders a set of cubes using Metal and alternates their colors each frame.
- MetalTexturedQuad Shows how to create a textured quad in Metal.
- MetalVertexStreaming Streams vertex data using memory shared by the CPU and GPU.
- MetalUniformStreaming Demonstrates using a data buffer to set uniforms for Metal vertex and fragment shaders.
- MetalImageProcessing Performs a simple compute post-processing pass using Metal.
- MetalDeferredLighting Demonstrates a deferred lighting algorithm using Metal.
- MetalShaderShowcase Demonstrates a variety of visual techniques optimized with Metal.