首页 文章

Swift包含金属着色器到库中[使用swift包管理器]

提问于
浏览
1

我一直在使用Xcode项目,但现在我正在启动一个我希望将来在其他平台上运行的项目,所以我使用Swift Package Manager来生成项目,但是我遇到了一个问题,我的库需要包含一个金属着色器文件(也是一个openGL着色器文件),但我对如何实现这一点毫无头绪 .

我的项目有2个部分,包含图形内容的库和可执行文件是我的实际应用程序,所以我想将我的图形库导入到我的应用程序中,但问题是Xcode项目中没有包含金属着色器文件似乎也没有编译/包含在库的捆绑文件中,所以我可以在运行时加载并在需要时使用它 .

如果你认为我做的事情完全错了,那就指出我吧 .

问候

1 回答

  • 0

    似乎现在无法做到这一点 . 当找到解决方法或Apple修复此问题时,我会更新此信息 .

    https://bugs.swift.org/browse/SR-2866

    Edit: 我找到的临时解决方案是创建bash script,编辑工作空间设置以更改构建路径,然后将metallib文件编译/复制到可执行路径(尚未尝试查看如何通过SPM分发库或类似的东西,现在只适用于同一文件夹中的代码(即Sources / MyEngine < - (此文件夹有金属着色器),Sources / MyGame) .

相关问题