当前位置:网站首页>Unity 渲染流水线
Unity 渲染流水线
2022-07-30 05:47:00 【Misaki_Me】
渲染流程
计算机就从一系列的顶点数据、纹理等信息出发,把这些信息最终转换成一张人眼可以看到的图像。这就是渲染流程所做的工作。
渲染流程具体可以分为三个阶段:应用阶段、几何阶段、光栅化阶段。其中每个阶段又会细分各个流程。
应用阶段
应用阶段由CPU负责,开发这对这个阶段拥有绝对的控制权。这一阶段主要有三个任务。
1. 准备好场景数据,如摄像机位置,场景中包含哪些模型、使用哪些光源等信息。
2. 进行剔除(culling)工作,将不可见的物体剔除出去。
3. 设置模型的渲染状态,这些渲染状态包括但不限于使用的材质、纹理、shader等。最终输出渲染图元给到GPU
几何阶段
几何阶段由GPU负责,将顶点坐标变换到屏幕空间中,再交给光栅器进行处理。输出顶点信息。
光栅化阶段
光栅化阶段依然由GPU负责,这一阶段使用几何阶段传递的数据来产生屏幕上的像素,并且渲染出最终的图像。
GPU渲染流水线
渲染流水线起点是CPU,即上面说到的应用阶段,应用阶段大致分为以下三个阶段:
1. 把数据加载到显存中,将所有渲染所需的数据从硬盘中加载到内存,再将网格和纹理等数据加载到显存中。
2. 设置渲染状态,即告诉GPU渲染的时候该用哪个着色器、材质、光源属性等,如果没有更改渲染状态,那么所有的网格都使用同一种渲染状态。
3. 调用DrawCall命令,这个命令指向一个需要被渲染的图元列表,而不会包含任何材质信息。当给定一个DC时,GPU就会根据渲染状态和所有输入的顶点数据来计算并最终显示像素。而这个计算过程就是GPU渲染流水线。
GPU流水线

边栏推荐
猜你喜欢

高交会重要活动之一|2020中国硬件创新大赛全国总决赛

使用Dva项目作Antd的Demo

Kunlun State Screen Production (serialization 4) --- Basics (graphical setting and display, button lights)

QT serial 2: LORA test platform based on QT and STM32H750 (1)

IEEE在指定期刊下搜索相关论文

独立按键控制led

VsCode connects to the remote server and modifies the file code

xxx is not in the sudoers file.This incident will be reported error

Explore the efficiency of make_shared

BLDC电机应用持续火爆,“网红神器”筋膜枪前景几何?
随机推荐
Vim find character
QT weekly skills (2)~~~~~~~~~ interface buttons
Acwing Brush Questions Section 1
NS3 error fatal error: ns3/opengym-module.h: No such file or directory
Massive remote sensing data processing and application of GEE cloud computing technology [basic, advanced]
[Punctuality Atom] Learning and use of IIC (unfinished...)
this的指向问题
C语言,库函数中qsort的用法,及解释
QT serial 4: LORA test platform based on QT and STM32H750 (3)
【部分项目展示】
Cannnot download sources不能下载源码百分百超详细解决方案
(*(void (*)())0)() Interpretation
Written before the official account - QT, ARM, DSP, microcontroller, power electronics and transmission!
Three working modes of CPU: real mode, protected mode, long mode
this是什么(你不知道的JS)
QT Weekly Skills (1) ~~~~~~~~~ Running Icon
jvm之方法区
你不知道的JS思考题
删除当前路径下含某个关键字的所有文件
创建快捷方式时如何不带“快捷方式“后缀字样?