Shader Language目前主要有3种主流语言:
基于 OpenGL 的 OpenGL Shading Language,简称 GLSL;
基于 DirectX 的 High Level Shading Language,简称 HLSL;
还有 NVIDIA 公司的 C for Graphic,简称 Cg 语言。
OpenGL(全写Open Graphics Library) 是一个定义了跨编程语言、跨平台的编程接口规格的专业图形程序接口。
OpenGL GLSL 中文手册
DirectX(Direct eXtension,简称DX) 是由微软公司创建的多媒体编程接口。由C++ 编程语言实现,遵循COM。被广泛适用于Microsoft Windows、Microsoft XBOX、Microsoft XBOX 360和Microsoft XBOX ONE电子游戏开发,并且只能支持这些平台。
微软官方手册:高级着色器语言 (HLSL)
Cg语言(C for Graphic) 是为GPU编程设计的高级着色语言,Cg极力保留C语言的大部分语义,并让开发者从硬件细节中解脱出来,Cg同时也有一个高级语言的其它好处,如代码的易重用性,可读性得到提高,编译器代码优化。Cg是一个可以被OpenGL和Direct3D广泛支持的图形处理器编程语言。Cg语言和OpenGL、Direct3D并不是同一层次的语言,而是OpenGL和DirectX的上层,即Cg程序是运行在OpenGL和DirectX标准顶点和像素着色的基础上的。Cg由NVIDIA公司和微软公司相互协作在标准硬件光照语言的语法和语义上达成了一致开发。所以,HLSL和Cg其实是同一种语言。
Cg Nvidia文档
形象的称呼 OpenGL、DirectX、NVIDIA的 C for Graphic为三足鼎立