John Marc

Follow @ioloro on

Metal/MetalKit Glossary

As someone that has never built using OpenGL or other rendering languages I found that many metal tutorials, examples, and books do not define in one place what means what. So, this is a glossary of Metal/MetalKit terms as I learn them.

SIMD: Single Instruction Multiple Data

Rendering: The processing of an outline image using color and shading to make it appear solid and three-dimensional

Vertex: refers to a point in three dimensional space where two or more lines, curves or edges of a geometrical shape meet, such as the corners of a cube.

Rendering pipeline: parses list of vertices → GPU → shader functions process vertices → final image/texture → CPU → Screen

Shape Primitive: cube, sphere, cylinder or torus

MTKMeshBufferAllocator: manages the memory of the mesh

Render Command Encoder: Wrapping of commands to be sent to the GPU

Pipeline State: Tell the GPU that nothing will change until the state changes. Pipeline state contains pixel format, if should render with depth, vertex and fragment functions. Pipeline states are set by pipeline descriptors.

BGRA: Blue, Green, Red, Alpha

Command Buffer: Stores all commmands you ask the GPU to run

Render Pass Descriptor: Holds data (attachments) for the render destinations

Render Command Encoder: Holds all information necessary to send to the GPU so it can draw vertices