问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Unity渲染管线原理详解

创作时间:
作者:
@小白创作中心

Unity渲染管线原理详解

引用
CSDN
1.
https://blog.csdn.net/boyZhenGui/article/details/137510417

Unity引擎的渲染管线是游戏开发中的核心技术之一,它决定了游戏画面的生成方式和性能表现。本文将详细介绍Unity渲染管线的各个阶段,包括应用阶段、几何阶段顶点处理、光栅化、片元处理和输出合并等环节。

应用阶段

应用阶段是CPU通过视椎体剔除,渲染排序,将模型的顶点贴图等数据通过setpasscall(使用shader和渲染模式)和drawcall(模型数据)传递给GPU。

几何阶段顶点处理

顶点处理将模型空间顶点转化为屏幕空间(模型空间-世界空间-裁剪空间-屏幕空间)。

光栅化阶段

光栅化阶段包括三角形裁剪、背面剔除、图元装配和光栅化等步骤。

片元处理

片元处理阶段主要进行光照着色和纹理着色。

输出合并

输出合并阶段包括Alpha测试、模板测试、深度测试、颜色混合等操作,最终将结果输出到帧缓冲区。

CPU和GPU的具体操作

CPU在应用程序阶段主要负责剔除、排序,并通过SetPass Call(使用shader和混合模式等渲染方式)和DrawCall(使用哪些模型数据进行渲染)向GPU提交数据。

顶点数据在GPU中进行转换(顶点shader),由模型空间定点,先转换到裁剪空间,再转换到屏幕空间坐标,然后进行图元装配和光栅化,片元着色器(片元shader)进行着色,然后合并输出到屏幕。

模型空间->世界空间->相机空间->裁剪空间

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号