Skip to content

Welcome to Metal

Introduction

Welcome to the Metal Tutorial. This tutorial will teach you the basics of Apple's Metal Graphics and Compute API, and help you understand how to program with it in C++ via the metal-cpp library that Apple has now officially released. There isn't much documentation for it yet, and it is missing some features, so I'll show you how to work around those in the following chapters. For those who are completely new, I'll try to go over everything in as much detail as I possibly can, and link to other resources for more information as necessary. I hope that this guide can be of use to you. You can find the source code for each chapter in the series on the github repository. Additionally, if you would like to contribute your own content to this tutorial series, or correct any mistakes that I've made, please feel free to comment, create an issue, or submit a pull request.

Metal Documenation and Other Useful Resources

Here are some resources that you may find helpful both while completing these tutorials, as well as when using Metal more generally:

Official Apple Metal Documentation

Useful Metal Resources

Computer Graphics Fundamentals

Ray Tracing