2.CPU和GPU的通信

渲染流水线的起点是CPU,也就是应用阶段,可以分为三个步骤。

  • 把数据加载到显存
  • 设置渲染状态
  • 调用drawcall

把数据加载到显存

所有的渲染数据都需要从硬盘中加载到内存,然后网格纹理等数据又被加载到显存,这是因为显卡对于显存的访问速度更快。加载到显存中的数据例如有顶点的位置信息,法线方向,顶点颜色,纹理坐标等

设置渲染状态

这些状态定义了场景中的网格是怎样被渲染的,例如,使用哪个Vertexshader、Fragmentshader,光源属性,材质等,准备好后调用一个渲染命令告诉GPU开是渲染,这个命令就是drawcall。

调用drawcall

接触过渲染优化的人都知道drawcall命令,该命令是由CPU发起,执行方是GPU,这个命令指向一个需要被渲染得的图元列表,当GPU接收到命令后就会根据渲染状态和输入的数据进行计算,最终输出成屏幕上那些漂亮的像素。
点击关注我的微博,给大家带来欢乐

你可能感兴趣的:(2.CPU和GPU的通信)