“观--《Unity Shader 入门精要》--有感(一)”

“观–《Unity Shader 入门精要》–有感(一)”
第二章
1.渲染流程分为3个阶段:应用阶段、几何阶段、光栅化阶段。(概念流水线)
2.渲染流水线:由三维场景渲染成二维图像。
3.渲染流水线任务是由CPU和GPU共同完成的。
4. 应用阶段(CPU):输入–场景数据(比如:视锥体、摄像机的位置、模型、光源等)、
粗粒度剔除(剔除物体,提高渲染性能)、渲染状态(材质(漫反射颜色、高光反射颜色)、纹理、shader等)
输出–渲染图元:渲染所需的几何信息。(渲染图元通俗来讲可以是点、线、三角面等)

5.几何阶段(GPU):对象:渲染图元(点、线、三角面)
过程:逐顶点、逐多边形
任务:顶点坐标变换到屏幕空间等
输出:屏幕空间的二维顶点坐标、每个顶点对应的深度值、着色等相关信息。
6.光栅化阶段(GPU):功能:数据–>屏幕像素,渲染出最终图像。
任务:决定每个渲染图元中的哪些像素应该被绘制在屏幕。
过程:逐顶点数据(纹理坐标、顶点颜色等)进行插值,逐像素处理。
7.CPU与GPU之间的通信,分为3个阶段:
(1)把数据加载到显存中;
(2)设置渲染状态;
(3)调用Draw Call。
8.数据从硬盘(HDD)读取,加载到内存(RAM),网格和纹理等数据又从内存加载到显存(VRAM)。
原因:显卡对显存的访问速度更快,大多数显卡对于内存没有直接的访问权利。
9.RAM中的数据需要保存,原因:需要进行其他操作(碰撞检测等),从硬盘加载到RAM非常消耗时间。
10.显存的数据:顶点的位置信息、法线方向、顶点颜色、纹理坐标等。
11.渲染状态:定义了场景中的网格是怎样被渲染的。
12.渲染状态:定义使用什么顶点着色器/片元着色器、光源属性、材质等。
13.数据、状态完成之后,调用Draw Call.
14.CPU与GPU的通道----Draw Call,发起方:CPU,接受方GPU。
15. 顶点数据
几何阶段:
(1)着色器(顶点/曲面细分/几何着色器)
(2)裁剪
(3)屏幕映射
光栅化阶段:
(1)固定函数阶段:三角形设置、三角形遍历
(2)片元着色器
(3)逐片元操作
屏幕图像

【注】:文章内容均为《Unity Shader 入门精要》一书,本人观书有感,不对之处,还请不吝指教。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值