0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

GPU图形渲染流水线的两个部分主要工作

汽车玩家 来源:楚权的世界 作者:楚权的世界 2020-03-15 17:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

GPU 图形渲染流水线的主要工作可以被划分为两个部分:

① 把 3D 坐标转换为 2D 坐标

② 把 2D 坐标转变为实际的有颜色的像素

GPU 图形渲染流水线的具体实现可分为六个阶段,如下图所示。

1. 顶点着色器(Vertex Shader)

2. 形状装配(Shape Assembly),又称 图元装配

3. 几何着色器(Geometry Shader)

4. 光栅化(Rasterization)

5. 片段着色器(Fragment Shader)

6. 测试与混合(Tests and Blending)

第一阶段,顶点着色器。

该阶段的输入是 顶点数据(Vertex Data) 数据,比如以数组的形式传递 3 个 3D 坐标用来表示一个三角形。顶点数据是一系列顶点的集合。顶点着色器主要的目的是把 3D 坐标转为另一种 3D 坐标,同时顶点着色器可以对顶点属性进行一些基本处理。

第二阶段,形状(图元)装配。

该阶段将顶点着色器输出的所有顶点作为输入,并将所有的点装配成指定图元的形状。图中则是一个三角形。图元(Primitive) 用于表示如何渲染顶点数据,如:点、线、三角形。

第三阶段,几何着色器。

该阶段把图元形式的一系列顶点的集合作为输入,它可以通过产生新顶点构造出新的(或是其它的)图元来生成其他形状。例子中,它生成了另一个三角形。

第四阶段,光栅化。

该阶段会把图元映射为最终屏幕上相应的像素,生成片段。片段(Fragment) 是渲染一个像素所需要的所有数据。

第五阶段,片段着色器。

该阶段首先会对输入的片段进行 裁切(Clipping)。裁切会丢弃超出视图以外的所有像素,用来提升执行效率。

第六阶段,测试与混合。

该阶段会检测片段的对应的深度值(z 坐标),判断这个像素位于其它物体的前面还是后面,决定是否应该丢弃。此外,该阶段还会检查 alpha 值( alpha 值定义了一个物体的透明度),从而对物体进行混合。因此,即使在片段着色器中计算出来了一个像素输出的颜色,在渲染多个三角形的时候最后的像素颜色也可能完全不同。

关于混合,GPU 采用如下公式进行计算,并得出最后的颜色。

R = S + D * (1 - Sa)

关于公式的含义,假设有两个像素 S(source) 和 D(destination),S 在 z 轴方向相对靠前(在上面),D 在 z 轴方向相对靠后(在下面),那么最终的颜色值就是 S(上面像素) 的颜色 + D(下面像素) 的颜色 * (1 - S(上面像素) 颜色的透明度)。

上述流水线以绘制一个三角形为进行介绍,可以为每个顶点添加颜色来增加图形的细节,从而创建图像。但是,如果让图形看上去更加真实,需要足够多的顶点和颜色,相应也会产生更大的开销。为了提高生产效率和执行效率,开发者经常会使用 纹理(Texture) 来表现细节。纹理是一个 2D 图片(甚至也有 1D 和 3D 的纹理)。纹理一般可以直接作为图形渲染流水线的第五阶段的输入。

最后,我们还需要知道上述阶段中的着色器事实上是一些程序,它们运行在 GPU 中成千上万的小处理器核中。这些着色器允许开发者进行配置,从而可以高效地控制图形渲染流水线中的特定部分。由于它们运行在 GPU 中,因此可以降低 CPU 的负荷。着色器可以使用多种语言编写,OpenGL 提供了 GLSL(OpenGL Shading Language) 着色器语言。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5111

    浏览量

    134515
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    流水线基本结构

    两个阶段: 取指 + 解码(Fetch + Decode):同时完成指令读取和初步解码。 执行(Execute):完成运算或数据操作。 特点: 减少流水线层级,简化控制逻辑。 动态功耗更低(每个周期激活的硬件单元更少)。 流水线
    发表于 11-21 07:35

    如何更好地选择工业流水线上用的条码扫码器?

    在工业生产与物流分拣的自动化浪潮中,条码扫码器已成为流水线高效运转的“眼睛”。无论是精密零部件的追溯管理,还是仓储货物的快速核验,一款适配的工业扫码器都能显著降低人工误差、提升生产效率。但面对市场上
    的头像 发表于 11-05 15:49 130次阅读
    如何更好地选择工业<b class='flag-5'>流水线</b>上用的条码扫码器?

    激光振镜运动控制器在流水线激光打标上的应用

    正运动流水线激光打标解决方案
    的头像 发表于 08-05 11:26 821次阅读
    激光振镜运动控制器在<b class='flag-5'>流水线</b>激光打标上的应用

    流水线扫码升级选NVF230!工业二维码读码器方案实测

    在现代流水线生产中,给每件产品贴上独特的“电子身份证”——DPM条码,再用工业二维码读码器实时追踪定位,早已是保障高效运转的关键操作。但轮到饮料行业,给瓶身或瓶盖上的DPM条码“打卡”,却成了让不少
    的头像 发表于 07-17 15:09 409次阅读
    <b class='flag-5'>流水线</b>扫码升级选NVF230!工业二维码读码器方案实测

    自动化开装封码流水线数据采集解决方案

    在智能制造加速推进的时代背景下,自动化开装封码流水线广泛应用于食品、药品、日化、电子等众多行业,承担着产品自动开箱、装填、封箱、贴标及码垛的核心生产任务。随着生产规模扩大和精细化管理需求的提升,对流水线
    的头像 发表于 06-27 15:56 555次阅读
    自动化开装封码<b class='flag-5'>流水线</b>数据采集解决方案

    面包成型流水线数据采集远程监控系统

    该食品加工企业主要从事多种口味的面包生产及销售,拥有一整条完整的面包成型流水线,能够自动进行面块切割、整平折叠、多次擀薄、冷库发酵、包油加馅、排盘等工序,各个变频器和伺服通过PLC进行集中控制,要求
    的头像 发表于 06-16 17:11 539次阅读
    面包成型<b class='flag-5'>流水线</b>数据采集远程监控系统

    远程io模块在汽车流水线的应用

    在汽车制造领域,生产流水线的高效、稳定运行是保障产品质量与生产效率的关键。随着工业 4.0 和智能制造理念的深入,汽车生产企业对流水线自动化控制提出了更高要求,不仅要实现设备间的精准协同作业,还需
    的头像 发表于 06-11 15:26 526次阅读

    工业4.0时代,为什么你的流水线必须配备固定式扫码器?

    地提高生产效率。在高速运转的生产线上,人工扫码速度慢且易疲劳,而固定式扫码器可以持续稳定地工作,以毫秒级的速度快速识别流水线上产品的一维及二维条码,减少了产品在扫描环
    的头像 发表于 06-09 16:12 419次阅读
    工业4.0时代,为什么你的<b class='flag-5'>流水线</b>必须配备固定式扫码器?

    GPU架构深度解析

    、游戏娱乐等领域。本文将深入探讨GPU架构的演变历程、核心组件以及其在不同应用场景中的优势。1、GPU架构的演变早期的GPU采用固定功能流水线架构,专为
    的头像 发表于 05-30 10:36 1415次阅读
    <b class='flag-5'>GPU</b>架构深度解析

    工业流水线上用的条码扫码器,如何选择与使用?

    使用成为了一重要课题。本文将从选择与使用两个方面,深入探讨工业流水线上条码扫码器的应用策略。一、条码扫码器的选择1、读取距离与视野的考量在选择条码扫码器时,首先要考
    的头像 发表于 05-14 15:18 670次阅读
    工业<b class='flag-5'>流水线</b>上用的条码扫码器,如何选择与使用?

    芯原推出面向可穿戴设备的超低功耗OpenGL ES GPU,支持3D/2.5D混合渲染

    ,专为可穿戴设备及其他需要动态图形渲染的紧凑型电池供电设备而设计,如智能手表、智能手环、AI/AR眼镜等。 芯原的GCNano3DVG IP结合了优化的硬件流水线与轻量且可配置的软件栈,实现了高效、低功耗的
    的头像 发表于 04-17 10:15 579次阅读

    RISC-V五级流水线CPU设计

    本文实现的CPU是一五级流水线的精简版CPU(也叫PCPU,即pipeline),包括IF(取指令)、ID(解码)、EX(执行)、MEM(内存操作)、WB(回写)。
    的头像 发表于 04-15 09:46 1402次阅读
    RISC-V五级<b class='flag-5'>流水线</b>CPU设计

    CPU渲染GPU渲染、XPU渲染详细对比:哪个渲染最快,哪个效果最好?

    渲染,是非常常见的模式。不过随着硬件和图形、软件技术的发展,XPU渲染,也逐渐成为日益常见的类型。三者采用不同的工作机制,亦拥有独特的优点和不足。这篇文章就详细介绍
    的头像 发表于 04-15 09:28 1241次阅读
    CPU<b class='flag-5'>渲染</b>、<b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>、XPU<b class='flag-5'>渲染</b>详细对比:哪个<b class='flag-5'>渲染</b>最快,哪个效果最好?

    GPU渲染才是大势所趋?CPU渲染GPU渲染的现状与未来

    在3D建模和渲染领域,随着技术的发展,CPU渲染GPU渲染种方法逐渐呈现出各自独特的优势,并且在不同的应用场景中各有侧重。尽管当前我们
    的头像 发表于 02-06 11:04 1279次阅读
    <b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>才是大势所趋?CPU<b class='flag-5'>渲染</b>与<b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>的现状与未来

    工业二维码条码扫描器流水线条码扫描

    在工业生产的广阔舞台上,工业二维码条码扫描器以其卓越的耐用性和高效的扫描能力,成为了连接自动化生产与信息管理不可或缺的桥梁。它们不仅是工厂流水线上的“慧眼”,更是提升生产效率、保障产品质量的得力助手
    的头像 发表于 01-07 16:07 912次阅读
    工业二维码条码扫描器<b class='flag-5'>流水线</b>条码扫描