<分区>
我想用 Lua 编写着色器代码,但它需要覆盖到 spir-v。我还没有遇到过非 glsl 编译器。这可能吗?
标签 c++ lua compilation vulkan
<分区>
我想用 Lua 编写着色器代码,但它需要覆盖到 spir-v。我还没有遇到过非 glsl 编译器。这可能吗?
最佳答案
这当然是可能的(制作一个从 Lua 到 SPIR-V 的转换器),但需要大量工作(如果您希望生成的 SPIR-V 代码高效,则肯定需要几年时间)。您需要编写一个 Lua 到 SPIR-V 编译器。
如果你想走那条路,读几本关于编译的书,从 Dragon Book 开始。 .当然,optimization (在你的 Lua -> SPIR-V 编译器中)真的很重要
您已将问题标记为 C++
。如果你想要关于 SPIR-V 的 C++ 相关内容,请考虑使用 OpenACC
我的建议是保持理性:如果您想为 GPGPU 编码, 使用专用低级 GPGPU类似 OpenCL 的语言(或 CUDA )。您可能只需要用该(OpenCL 或 CUDA)语言编写短例程(compute kernels)(以及更多胶水代码,例如,能够从 Lua 程序,甚至 C++ 或 C 程序中使用它们) .
关于c++ - 可以将 Lua 转换为 spir-v 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42633171/