c++ - 可以将 Lua 转换为 spir-v 吗?

标签 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/

相关文章:

c++ - 使用 HEX 定义使用 ESC 命令创建字符串

Lua 使用索引或值搜索表

c++ - Wt 编译问题

c++ - 不接受 Int 值

c++ - 将调用者姓名传递到模板函数中的惯用方式

lua - 如何为接受并返回 2 个表的函数创建 SWIG 类型映射

compilation - 更改事件构建目标 xcode 4

elasticsearch - 如何验证Elasticsearch无痛脚本?

c++ - 既是基类又可直接使用的类模板

lua - 如何在 Lua 中测试 -1.#IND(不确定)?