责人斯无难,惟受责俾如流,有惟艰哉。 –《尚书·秦誓》
指责别人的错误并不困难,困难的是自己能够像流水一样从容的接受别人的指责。
D3D中渲染方式有两种:
- 固定功能的渲染流水线(Fixed function render pipeline)
- 可编程渲染流水线(programmable render pipeline)
1.固定功能的渲染流水线(Fixed function render pipeline)
基本步骤:
- 填充顶点数据
- 制定纹理坐标
- 设置材质
- 设置光照
- 设置变换矩阵
- 设置渲染状态
- 绘制图形
这一套流程,就是调用内部函数,我们无法知道内部进行了什么操作。
2.可编程渲染流水线
自己写shader,这是目前3D编程的趋势。不仅限于使用内部接口完成渲染,可自由的发挥编写着色器。
可编程渲染流水线的核心是着色器(shader)。
在Direct3D9中主要关注的是顶点着色器(vertex shader)和像素着色器(pixel shader)。
可编程渲染流水线中使用的一种辅助C++的编程语言,是一种编译和运行在GPU处理器中的Direct3D的独有的着色器编程语言——HLSL(high level shader language)。