MSL (Metal Shading Language)
Metal Shading Languageとは、Metalで利用するプログラマブルシェーダーを記述するためのプログラミング言語である。
概要
C++に似ているが完全に別言語である。
ソースコードの拡張子は「.metal」であり、それをビルドしたバイナリの拡張子は「.metallib」となっている。
MetalのMSLは事前コンパイルを採用している。アップルによるとMetalが登場するまで使われていたOpenGLやOpenGL ESのGLSLでは実行時コンパイルを採用していたが、iPhoneのような環境で実行時コンパイルはあまりにも重すぎるため事前コンパイル方式を採用したとしている。
最小限
そのうちかく
Xamarinからの利用
「メインバンドル(アプリに含まれるリソース)に含まれるmetallib」はCreateDefaultLibraryメソッドで手軽に読み込める。とくに難しく考える必要性はない。
var library = _device.CreateDefaultLibrary();