Shader:图形可编程方案的程序片段。
渲染管线:一种计算机从数据到最终图形成像的形象描述。
- 材质是质感
- Shader是方案
- 贴图是图案和颜色
流程
Shader的编程语言有三大高级汇编语言:
- 基于OpenGL的GLSL
- 基于DirectX(微软)(单机游戏超级多需要安装) HLSL
- 基于NVIDIA (N卡)的Cg (其实Cg由N卡公司和微软一起开发的,HLSL和Cg其实是一门语言)
为什么使用GPU编程
优点: GPU高并行结构 拥有更多逻辑运算单元(ALU)适合用于密集型数据处理,对数据进行独立运算(多个数据并行运算时间和一个数据单独执行时间是一样的)
CPU大部分面积为控制器和寄存器
GPU并行处理能力强于CPU 让它同一时间处理很多顶点数据
缺点:由于是数据独立运算难以实现数据之间相关性的算法(射线和物体的求交运算)
GPU无法实现CPU强大逻辑运算能力(这就是为何GPU如此牛皮却无法取代CPU的原因)