iOSのDeveloperサイトでは基本的なものから応用的なものまでいくつかのMetalのサンプルがダウンロードできるようになっています。 早速Metalを学習しようと一番基本的なサンプルを紐解いてみるも、以下のように沢山のクラスが登場します。 ・MTLDevice ・MTLBuffer ・MTLTexture ・MTLCommandQueue ・MTLCommandBuffer ・MTLRenderCommandEncoder ・MTLLibrary ・MTLFunction ・MTLRenderPipelineState 主なものを列挙してみましたが、数が多いだけに前提知識無しでいきなりサンプルを読み進めるのは困難です。 そこで今回はこれらのクラスがレンダリング全体の流れの中でどのような役割を担っているか図で整理しながら紹介したいと思います。 ここで紹介する流れは複雑なサンプルであって