Metal简介
Metal 框架是苹果公司开发的支持 GPU 加速、高级 3D 图形渲染和数据并行计算的 API,用于对图形和计算命令的组织、处理和提交以及这些命令的相关数据和资源的管理进行细粒度的低级控制。Metal 的主要目标是最大限度地减少执行 GPU 工作负载所产生的 CPU 开销。Metal 框架使您的应用程序可以直接访问设备的图形处理单元 (GPU)。借助 Metal,应用程序可以利用 GPU 快速渲染复杂场景并执行并行计算任务。
Metal 提供了低开销 API、丰富的着色语言,图形与计算之间紧密的集成,以及一套出色的 GPU 性能分析和调试工具,来支持 Apple 平台上的硬件图形加速。Metal 3 带来了强大的功能,可以帮助您的游戏和专业 App 充分挖掘 Apple 芯片的潜力。现在您可以用更少的时间渲染高清图形,更快地加载资源,用 GPU 训练机器学习网络等。
快速入门的最好方式就是参考官方示例结合指导手册进行学习:
Metal指导手册
Metal官方sample code下载地址
以下是正文:
-
下载官方示例:Learn Metal with C++(入门级项目)
本系列从展示如何创建窗口和渲染图元开始,并通过展示 3D 渲染和计算处理的示例进行了改进。
-
解压后用xcode打开目录中的LearnMetalCPP.xcodeproj
打开后如下图:
注:若出现下面的提示,因Xcode版本原因无法打开,请按下面的操作更改
用其他工具打开project.pbxproj,将版本55改为50,将13.0改为9.3,然后保存设置即可重新打开。(因为我的Xcode版本是12.5,而该文件要求的是13.0,所以降低版本要求后即可)
- 打开项目后选择其中的示例运行。以00-window.cpp为例进行演示。
执行成功后会生成一个红色的窗口,表示此时运行成功。可以再试试运行其他demo,看看出来的效果。
注:如果提示以下错误,macOS系统版本不兼容,需要降低平台的版本即可。
按图片中的步骤将macOS版本降低,再次运行程序即可。