gpt4 book ai didi

xcode - 手动编译 Metal 着色器

转载 作者:行者123 更新时间:2023-12-04 09:59:06 26 4
gpt4 key购买 nike

我有兴趣远离 Xcode,并在项目中为混合语言应用程序手动编译 Metal 着色器。

不过,我不知道该怎么做。 Xcode 隐藏了着色器编译和随后在运行时加载到应用程序中的细节(您只需调用 device.newDefaultLibrary() )。这甚至是可能的,还是我必须使用运行时着色器编译来达到我的目的?

最佳答案

通常,您可以通过三种方式在 Metal 中加载着色器库:

  • 通过 MTLDevice newLibraryWithSource:options:error: 使用来自着色器源代码的运行时着色器编译或 newLibraryWithSource:options:completionHandler:方法。尽管纯粹主义者可能会回避运行时编译,但此选项的实际开销最小,因此完全可行。避免使用此选项的主要实际原因可能是避免将着色器源代码作为应用程序的一部分提供,以保护您的 IP。
  • 使用 MTLLibrary newLibraryWithFile:error: 加载已编译的二进制库或 newLibraryWithData:error:方法。按照 Using Command Line Utilities to Build a Library 中的说明进行操作在构建时创建这些单独的二进制库。
  • 让 Xcode 编译您的各种 *.metal文件在构建时通过 MTLDevice newDefaultLibrary 进入可用的默认库中.
  • 关于xcode - 手动编译 Metal 着色器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32298719/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com