作业帮 > 综合 > 作业

pixel shader 2.0是什么啊?

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/05/29 20:32:03
pixel shader 2.0是什么啊?
懂行的朋友帮忙解释一下pixel shader 2.0是个什么东西啊
pixel shader 2.0是什么啊?
Direct3D历代都提供了一些光照的方式,但随着画面的复杂,DX自带的光照越来越无法满足开发的需要,于是就出现了shader,中文一般翻译为着色器,事实上个人认为这个单词比较难确切翻译.
shader在DX9来说分为pixel shader和vertex shader,后者用于顶点(模型的顶点)着色,前者则用于每个象素的着色.什么叫着色么.最好能有一点3D编程基础才方便理解,否则说起来太麻烦.简单说象素,就是光栅化投影到2D的每个点,着色,则是按照一定的算法,根据光源、物体本身的属性来确定该象素的具体颜色的过程.
pixel shader和vertex shader在Direct3D 8/9中合称Shader Model,OpenGL和之后的Direcrt3D还有别的shader.
早期的hardware T&L事实上也支持自定义shader,但是缺点是开发难度很高,shader model 1.1(也可能是2.0,这里不十分肯定)以后支持用C语言写一个shader,然后让D3D程序执行,简化了开发.
1.0/1.1/2.0/3.0/的区别,前2个我不熟,只知道局限较大,3.0对比2.0最著名的变化则是(理论上)无限长指令的支持,其他变化主要是规格的提升(比如对HDR支持精度的提高等)
总的来说,这东西比较难解释.