【问题标题】:Support for Cg profiles in modern hardware支持现代硬件中的 Cg 配置文件
【发布时间】:2015-12-10 14:33:25
【问题描述】:

我有一个使用现已弃用的 nvidia scenix 和 Cg 着色器的内部应用程序。它工作正常,而且由于它是内部的,我们可以选择在什么硬件上运行它。

着色器当前使用 vp40/fp40 配置文件(尽管我可以将其更改为使用更高版本的配置文件,如 GLSLV/GLSLF)。我试图确认当前的 nvidia 硬件仍然支持 Cg 着色器?即,如果我们购买最新的 OpenGL4 geforce 或 quadro 卡,它们是否仍支持 Cg 配置文件?我在nvidia论坛上问过,但没有答案。最终我们将不得不升级到新的场景图和 GLSL,但我想知道 Cg 着色器有哪些“传统”支持。

谢谢

【问题讨论】:

    标签: opengl glsl nvidia cg


    【解决方案1】:

    是的,你很好。事实上,NVidia 驱动程序中的 GLSL 实现实际上是 Cg 编译器的附加组件。即使在最新一代的 GPU 上,NVidia 驱动程序在内部首先将 GLSL 转换为 NV/ARB_programm_... 汇编(实际上是源代码)并通过汇编程序运行它。 NVidia 不太可能在不久的将来改变这一点(尽管 SPIR-V 的引入可能会迫使他们采取行动)。并且所有遗留的 OpenGL ARB/NV_program 接口都作为扩展得到很好的支持(甚至到 OpenGL-4 核心配置文件)。

    【讨论】: