Shader|渲染流程

  1. GPU:Graphics Processing Unit,图像处理器,GPU上有成千上万核,这些核并行运行;
  2. CPU:Central Processing Unit,中央处理器,CPU通常有单核、双核、四核和八核,但这些核只能串行操作。
  3. 渲染流水线的工作任务在于由一个三维场景出发、生成(或渲染)一张二维图像,这个工作由CPU与GPU负责,如下图所示。
    Shader|渲染流程

一、应用程序阶段:
  1. 准备场景数据:所有渲染所需要的数据都需要从硬盘(HDD)中加载到系统内存(RAM)中。然后,网格和纹理等数据又被加载到显卡上的存储空间——显存(VRAM)。这是因为,显卡对于显存(VRAM)的访问速度更快,而且大多数显卡对于系统内存(RAM)没有直接的访问权利。
  2. 设置渲染状态:定义场景中的网格是怎么被渲染的。设置好之后,CPU调用渲染命令DrawCall来通知GPU开始渲染。
  3. DrawCall就是一个命令,它的发起方是CPU,接收方是GPU。当给定一个DrawCall后,GPU上会执行几何阶段与光栅化阶段。

二、GPU流水线: 包括几何阶段光栅化阶段,每个阶段GPU提供了不同的可配置性或可编程性,如下图所示。

    Shader|渲染流程

  • 绿色表示该流水线阶段是完全可编程控制的。实线表示该Shader必须由开发者编程实现,虚线表示该Shader是可选的。
  • 黄色表示该流水线阶段可以配置但不是可编程的。
  • 蓝色表示该流水线阶段是由GPU固定实现的,开发者没有任何控制权。




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烫青菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值