【问题标题】:for shading language, which one is in the mainstream?对于着色语言,哪一种是主流?
【发布时间】:2012-02-05 09:38:41
【问题描述】:

现在有几种着色语言可用,例如 GLSL、HLSL、CG,选择哪一种来跟上潮流?

【问题讨论】:

    标签: glsl hlsl cg


    【解决方案1】:

    HLSL 特定于 DirectX,而 GLSL 特定于 OpenGL。无法在 DirectX 中编译 GLSL 着色器或在 OpenGL 中编译 HLSL 着色器。如果您要选择这两者之一,您会选择它,因为您选择了 DirectX 或 OpenGL。

    Cg 是一种主要由 nVidia 创建的中间语言,可以编译为 GLSL 和 HLSL。据我所见,Cg 不像 GLSL 或 HLSL 那样流行,但我没有深入研究。

    所有 3 个都有广泛的指南和教程,如果您打算编写一个可以同时支持 OpenGL 和 DirectX 作为底层 API 的系统,请选择 Cg,或者根据您选择的 API 选择一个。它们都不会很快过时。

    【讨论】: