0

在 Cg 教程中,它说 Cg 使用动态编译。我注意到它的编译器与解释器有一些相似之处,因为它们不需要在第一遍编译所有代码,如果存在错误,您会在运行 exe 时找到它。

但是,它们之间有什么区别。谁能给我一些细节?非常感谢。

4

1 回答 1

0

在这种情况下,Cg 代码是在运行时编译的。这类似于编译成中间形式(例如 p 代码等)的解释器。在 GPU 上执行此操作的主要原因是,编译结果可能会因运行时计算机的配置而略有不同。Cg (通常)编译为 OpenGL 汇编器(例如,'fp40' 或 'arbfp' 用于片段程序)。

确实,这个编译的汇编代码被 GPU 驱动程序进一步编译成微码,但这个过程对程序员是完全隐藏的(除非他们在 NVIDIA 等公司工作)。

于 2012-12-05T00:41:52.177 回答