





























前阵子在处理动森二维码的服装预览模型的时候,玩了一下 Blender。于是又勾起了我小时候玩 3D Max 的回忆。于是好想给手上这台 Macbook Pro 2016 配个显卡,深入学习一下 3D 建模。
于是在网络上搜索了好一阵,发现可以使用 eGPU(外置显卡坞)将独立显卡接到 Macbook 上使用。苹果的官网有一篇文章介绍了目前各个版本的系统支持的 eGPU 以及显卡的情况。
仔细看了一圈下来,发现由于历史原因近几年新出的 Macbook 并不支持 nvidia 显卡。看来是没法享受最近要发布的 RTX 3080 系列,只能选择 AMD 显卡。经过简单的预算,最终选择了 Razer Core X 和 AMD RX 5700 XT 来体验一番。
经过一个多星期的等待,收齐了两个包裹,兴奋地开箱安装。Razer Core X 比想像中的笨重,体积堪比一个小型机箱。但是非常简单易用,全程无需镙丝刀就把显卡装上。内置 650W 的电源,可以给大号显卡和笔记本同时供电。使用也很方便,只需要将 USB-C 线接到 Macbook Pro 的雷电接口就行了。后悔没有加点钱买带 4 个 USB 的 Razer Core X Chroma,这样还可以省去使用另外的 USB Hub。苹果对 AMD 显卡的支持也是即插即用,不需要再安装额外的驱动,相当省心。
但是,后面的体验但没有那么愉快。下载安装了最新的 Blender 2.90,然后一路摸索到 Edit > Preferences… > System > Cycles Render Devices 才发现 OpenCL 面板竟然找不到显卡,原因是 macOS 为了推广自家的 Metal 标准,在 10.14 移除了对 OpenCL 的支持。这样的话,这 eGPU 对 blender for macOS 岂不是毫无用武之地了,T_T 哭。
经过一翻研究,发现 AMD 官方有个叫 Radeon ProRender 的产品。它提供了 Blender 插件并实现了 Metal 接口的渲染加速。看起来挺不错的,于是下载来试了试,说不定能曲线救图。
安装完插件后,需要在 Blender 中切换到 ProRender 渲染引擎。于是我尝试渲染了一些 Demo,结果 Blender 闪退到让人弃坑。不过我还是坚持做完了一个 tutorial。第二天想想,这闪退应该有什么解决方案。于是终于在 AMD 的论坛让我找到了解决方案:将 Noise Threshold 优化关闭即可(设置为 0)。
得以使用 ProRender 继续学习 Blender。不过在使用的过程中发现 ProRender 并不支持全部 Blender 的渲染结点,也不能访问一些模型数据。导致渲染出来的效果往往跟教程中有些许差异。还好我不是很在意这些,多数渲染问题都可以在技术上变通。好再 eGPU 是工作起来了。
游戏引擎的渲染引擎是否会有类似的渲染的差异,回头再研究。另外我试了一些支持 macOS 的游戏,例如 Tomb Rider、StarCraft II,特效全开问题不大。但是有些游戏几乎跑不起来,例如 Fortnite,直接卡死在大厅(应该是 CPU 没跟上的问题)[1]。大部分大作只支持 Windows,macOS 上几乎没啥可玩。
我还试在了 Windows 机器上使用这个 eGPU。Blender 依然无法在 Windows 使用 OpenCL 加速,论坛上很多使用 AMD 显卡的人都有这个问题。看来要搞 3D Modeling 还是老老实实使用 Windows + Nvidia 显卡比较省心。最近有两个新闻:1)Nvidia 打算收购 ARM[2]。2)Apple 未来将使用 ARM[3] 作为新机器的内核。不知道未来 Apple 和 Nvidia 是否会重归于好,重新支持上 Nvidia 的显卡呢?让我们拟目以待。
苹果投资了 Blender 基金会 12 万欧元,并向 Cycles 渲染引擎提交了 Metal 接口的本地支持。Blender 3.1 版本将会原生支持苹果的渲染接口。可以坐等 2022 年的更新了。
后来又试了几次,测试结果是每次退出游戏并重新进行游戏后都会有大概10多分钟的 MetalCompileService 编译时间,之后重复游戏加载比较快。 ↩︎
后来放弃了 ↩︎
Apple 最终推出了 ARM-based 的 M1 芯片。 ↩︎
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。