在Cg教程中,它说Cg使用动态编译。我注意到它的编译器与解释器有一些相似之处,因为它们不需要在第一次传递中编译所有代码,如果存在错误,您可以在运行exe时找到它。
然而,它们之间的区别是什么。有谁能告诉我一些细节吗?非常感谢。
发布于 2012-12-05 08:41:52
在这种情况下,Cg代码是在运行时编译的。这类似于向下编译为中间形式(例如p-code等)的解释器。在GPU上这样做的主要原因是,根据运行时计算机的配置,编译结果可能会略有不同。Cg编译(通常)为OpenGL汇编程序(例如,片段程序的'fp40‘或'arbfp’)。
这个编译过的汇编器代码确实被GPU驱动程序进一步编译成微码,但这个过程对程序员来说是完全隐藏的(除非他们在NVIDIA等公司工作)。
https://stackoverflow.com/questions/10337957
复制相似问题