三大主流编程语言

HLSL:igh Level Shading Language


GLSL:OpenGL Shading Language


CG:C for Graphic



shader language 的发展方向是设计出在便捷性方面可以和C++\JAVA相比的高级语言,“赋予程序员灵活而方便的编程方式”,并“尽可能的控制渲染过程”,同时“利用图形硬件的并行性,提高算法的效率”

shader language目前主要有3中语言:基于OpenGL的OpenGL Shading Language,简称GLSL,基于DirectX的High Level Shading Language简称HLSL,还有NVIDIA公司的C for Graphic简称Cg语言



GLSL与HLSL分别基于OpenGL和Direct3D的接口,两者不能混用,事实上OpenGL和Direct3D一直都是冤家对头,争斗良久。OpenGL在其发展中积累下的用户群庞大,这些用户会选择GLSL学习。GLSL集成了OpenGL的良好移植性,一度在unix等操作系统上独领风骚。但GLSL的语法体系自成一家。微软的HLSL移植性较差,在windows平台可谓一家独大,这一点在很大程度上限制了HLSL的推广和发展。但是HLSL永远DX游戏领域却是深入人心。

CG语言(C for Graphic)是为GPU编程设计的高级着色器语言,Cg极力保留C语言的大部分语义,并让开发者从硬件细节中解脱出来,Cg同时也有一个高级语言的其他好处,如代码的易重用性,可读性得到提高,编译器代码优化。Cg是一个可以被OpenGL和Direct3D广泛支持的图形处理器编程语言。Cg语言和OpenGL、DirectX并不是同一层次的语言,而是OpenGL和DirectX的上层,即,Cg程序是运行在OpenGL和DirectX标准顶点和像素着色的基础上的。Cg由NVIDIA公司和微软公司相互协作在标准硬件光照语言的语法和语义上达成了一致开发。所以,HLSL和Cg其实是同一种语言。

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭