这些天我正在尝试 Apple 的 Metal。
似乎Metal shading language 与vulkan glsl
非常相似.
一些问题:
1.有没有开源的编译器来编译Metal shading语言?或者它可以翻译成另一种着色语言吗? glsl
或 spirv
?
opengl
游戏使用glsl
直接地? 想知道是否有一些文档描述了 Apple 的 Metal IR?
谢谢!
最佳答案
metal
编译MSL的工具是clang
的修改版,但我不认为这些修改是开源的。它接受许多与 clang
相同的命令行选项。生成各种输出文件。
默认情况下,它产生 .air
文件,它们是 LLVM 位码。您可以使用 llvm-dis
之类的工具拆卸它们。
Metal 应用程序可以使用预编译的着色器,也可以在运行时从 MSL 源进行编译。应用程序将使用 -newLibraryWithSource:...
之一MTLDevice
的方法对于后者。
关于ios - Metal 着色语言 IR 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49810845/