【发布时间】:2016-03-20 20:03:17
【问题描述】:
我正在尝试制作一个可可触摸框架,该框架将在 OSX/iOS 上执行一些并行计算,但在设置测试时遇到了一些问题。每当我尝试运行时:
library = device.newDefaultLibrary()!
我被错误击中:
/Library/Caches/com.apple.xbs/Sources/Metal/Metal-55.2.8/Framework/MTLLibrary.mm:1016: failed assertion `filepath must not be nil.'
我还尝试直接从包中加载着色器,但没有成功。
如何正确加载金属着色器,以便在框架/测试中使用它们?
谢谢!
【问题讨论】:
-
您是否从正确的包中加载着色器以进行测试?
NSBundle.mainBundle()不会返回正确的测试包。 -
如果您尝试在操场上执行此操作,
newDefaultLibrary()方法将不起作用。您需要创建自己的文件路径,就像我不久前在blog post 中解释的那样。
标签: ios swift macos shader metal