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

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

3天内不再提示

GPU渲染过程的几个阶段

Dbwd_Imgtec 来源:工程师曾玲 2019-02-02 11:38 次阅读

GPU的渲染流水线的主要任务是完成3D模型到图像的渲染(render)工作。常用的图形学API编程模型中的渲染过程被分为几个可以并行处理的阶段,分别由GPU中渲染流水线的不同单元进行处理。GPU输入的模型是数据结构(或语言)定义的对三维物体的描述,包括几何、方向、物体表面材质以及光源所在位置等;而GPU输出的图像则是从观察点对3D场景观测到的二维图像。在GPU渲染流水线的不同阶段,需要处理的对象分别是顶点(vertex)、几何图元(primitive)、片元(fragment)、像素(pixel)。

如图1-1所示,典型的渲染过程可以分为以下几个阶段:

1.顶点生成

图形学API用简单的图元(点、线、三角形)表示物体表面。每个顶点除了( x , y , z ) 三维坐标属性外还有应用程序自定义属性,例如位置、颜色、标准向量等。

2.顶点处理

本阶段主要是通过计算把三维顶点坐标映射到二维屏幕,计算各顶点的亮度值等。这个阶段是可编程的,由vertex shader完成。输入与输出一一对应,即一个顶点被处理后仍然是一个顶点,各顶点间的处理相互独立,可以并行完成。

3.图元生成

根据应用程序定义的顶点拓扑逻辑,把上阶段输出的顶点组织起来形成有序的图元流。顶点拓扑逻辑定义了图元在输出流中的顺序,一个图元记录由若干顶点记录组成。

4.图元处理

这一阶段也是可编程的,由geometry shader完成。输入和输出不是一一对应,一个图元被处理后可以生成0个或者多个图元,各图元处理也是相互独立的。本阶段输出一个新的图元流。

5.片元生成

这一阶段将对每一个图元在屏幕空间进行采样,即光栅化。每一个采样点对应一个片元记录,记录该采样点在屏幕空间中的位置、与视点之间的距离以及通过插值获得的顶点属性等。

6.片元处理

片元处理阶段是可编程的,由pixel shader完成,主要完成图形的填色功能。模拟光线和物体表面的交互作用,决定每个片元的颜色及透明程度等属性。

7.像素操作

用每个片元的屏幕坐标来计算该片元对最终生成图像上的像素的影响程度。本阶段计算每个采样点离视点的距离,丢弃被遮挡住的片元。当来自多个图元的片元影响同一个像素时,往往都根据图元处理输出流中定义的图元位置进行像素更新。

下面以绘制一朵玫瑰为例来说明GPU图形流水线的工作流程。

首先,GPU从显存读取描述玫瑰3D外观的顶点数据,生成一批反映三角形场景位置与方向的顶点;

由vertex shader计算2D坐标和亮度值,在屏幕空间绘出构成玫瑰的顶点;

顶点被分组成三角形图元;

geometry shader进行进一步细化,生成更多图元;

随后,GPU中的固定功能单元对这些图元进行光栅化,生成相应的片元集合;

由pixel shader从显存中读取纹理数据对片元上色和渲染;

最后一个阶段,根据片元信息更新玫瑰图像,主要是可视度的处理。

由ROP完成像素到帧缓冲区的输出,帧缓冲区中的数据经过D/A输出到显示器上以后,就可以看到绘制完成的玫瑰图像了。

GPU渲染过程的几个阶段

图 1-1

图形渲染过程具有内在的并行性:顶点之间、图元之间、片元之间的数据相关性很弱,对它们的计算可以独立并行进行。这使得通过并行处理提高吞吐量成为可能。

首先,渲染流水线具有时间上的功能并行。流水线的各级可以同时工作,当各级都能满负荷工作时,能够获得最高性能。

其次,渲染流水线具有数据并行性。不仅可以通过SIMD提高每一个可编程着色器的性能,还可以在一个GPU内集成多条渲染流水线实现更高的吞吐量。

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

    关注

    27

    文章

    4413

    浏览量

    126640
  • API
    API
    +关注

    关注

    2

    文章

    1380

    浏览量

    60983

原文标题:GPU渲染流水线

文章出处:【微信号:Imgtec,微信公众号:Imagination Tech】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    赛昉科技VisionFiv2上的GPU渲染测试,平均60帧每秒,非常丝滑

    gpu渲染
    xusiwei1236
    发布于 :2023年12月24日 21:23:11

    Centos6的引导过程分为哪几个阶段

    Centos6的引导过程分为哪几个阶段呢?这些阶段分别有哪些作用?
    发表于 10-19 06:36

    BootLoader启动过程分为哪几个阶段

    BootLoarder是什么?BootLoader的操作模式有哪几种呢?BootLoader启动过程分为哪几个阶段呢?
    发表于 11-30 07:02

    缺少VGlite字体渲染api文档,求分享

    我试图使用 vglite api 在 MIMXRT1166/1176 上使用 verisilicon gpu 渲染图形,并且特别缺乏关于此的文档。 我能够很好地初始化 GPU渲染
    发表于 04-24 06:42

    基于磁贴的GPU架构优缺点

    将输出帧缓冲区渲染几个不同的较小的子区域,称为平铺。然后,它在完成时将每个磁贴写出到内存中。在马里图形处理器上,这些瓷砖很小,每个瓷砖只有16x16像素。 在本指南结束时,您将了解即时模式GPU和基于磁贴的
    发表于 08-02 12:54

    什么是强制gpu渲染_强制渲染gpu有什么用

    本文主要介绍了gpu的定义、gpu工作原理、gpu功能作用及手机的强制进行GPU渲染的详细解释,最后介绍了强制
    发表于 01-05 17:13 7283次阅读

    强制GPU渲染是一把双刃剑,有利有弊

    而除影响续航外,强制GPU还有一个致命的弊端,那就是有一些较老的软件在强制GPU渲染下是无法正常运行的,会经常性的出现FC的情况,主要原因是过去程序的SDK版本多数不支持GPU加速,或
    的头像 发表于 04-19 15:04 4.5w次阅读

    GPU原理 GPU渲染流程

    GPU渲染流水线,是硬件真正体现渲染概念的操作过程,也是最终将图元画到2D屏幕上的阶段GPU
    发表于 04-27 11:33 9103次阅读
    <b class='flag-5'>GPU</b>原理 <b class='flag-5'>GPU</b><b class='flag-5'>渲染</b>流程

    GPU管线各个阶段知识点详细的分析理解

    GPU渲染流水线,是硬件真正体现渲染概念的操作过程,也是最终将图元画到2D屏幕上的阶段GPU
    的头像 发表于 04-28 16:28 5153次阅读
    <b class='flag-5'>GPU</b>管线各个<b class='flag-5'>阶段</b>知识点详细的分析理解

    GPU绘图的四个阶段包括裁剪阶段,光栅化阶段,像素阶段和输出阶段概述

    GPU绘图的几个阶段:裁剪,光栅化,像素,输出
    的头像 发表于 05-13 11:46 5458次阅读

    GPU的原理渲染流程详细说明

    GPU 相关知识具有兴趣,不妨继续往下阅读哦。 GPU 渲染流水线,是硬件真正体现渲染概念的操作过程,也是最终将图元画到 2D 屏幕上的
    发表于 12-25 07:24 4次下载
    <b class='flag-5'>GPU</b>的原理<b class='flag-5'>渲染</b>流程详细说明

    AMD下代三大GPU核心渲染图公布

      最近,AMD下一代三个GPU内核的一组渲染图已经发布,但该区域的大小与之前的描述不同。
    的头像 发表于 08-18 16:19 632次阅读

    一文详解CPU渲染GPU渲染之间的优劣

    CPU 渲染利用计算机的 CPU 来执行场景并将其渲染到接近完美。这也是执行渲染的更传统方式。然而,随着 GPU 的出现,基于 GPU
    的头像 发表于 03-08 14:50 1566次阅读

    3D渲染——光栅化渲染原理解析

    渲染进行介绍,描述了简单场景下3D渲染过程,主要帮助读者了解基于光栅化的 3D 渲染原理及过程。本文为系列文章,并在下一篇系列文章中以 I
    的头像 发表于 05-18 17:29 1508次阅读
    3D<b class='flag-5'>渲染</b>——光栅化<b class='flag-5'>渲染</b>原理解析

    无铅锡膏回流过程分为几个阶段

    想来对很多人而言,对无铅锡膏回流这一工艺流程是不太熟悉的,其实无铅锡膏在加热处理过程中,锡膏回流可以分为以下几个阶段。接下来,佳金源锡膏厂家来为大家讲解一下:通常情况下,无铅锡膏回流过程
    的头像 发表于 11-22 14:45 195次阅读
    无铅锡膏回流<b class='flag-5'>过程</b>分为<b class='flag-5'>几个</b><b class='flag-5'>阶段</b>?