什么是渲染流水线

本文详细介绍了渲染流水线的三个主要阶段:应用阶段、几何阶段和光栅化阶段。在应用阶段,CPU负责场景数据准备、剔除不可见物体和设置渲染状态。几何阶段在GPU上进行,包括顶点坐标变换和可选的着色器操作。光栅化阶段则将几何信息转化为屏幕上的像素,涉及逐像素处理。此外,文章还提到了GPU流水线的控制权和着色语言如HLSL、GLSL。
摘要由CSDN通过智能技术生成

第二章 什么是渲染流水线

一、渲染流水线的三个概念阶段

我们对渲染流水线进行基本的功能划分,可以将流水线分成三个阶段。注意这里的阶段只是单纯的概念,不是实际硬件实现方式

  1. 应用阶段
    • 本阶段由我们的应用主导,因此通常是由CPU负责实现。开发者具有这个阶段的绝对控制权。
    • 主要有三个任务:
      1. 准备好场景数据,例如摄像机的位置、视锥体、场景中包含了哪些模型、使用了哪些光源等等;
      2. 为了提高渲染性能,我们往往需要做一个粗粒度剔除(culling)工作,把不可见的物体剔除出去。不需要移交给下一阶段处理;
      3. 需要设置好每个模型的渲染状态:材质(漫反射颜色、高光反射颜色)、纹理、shader等
    • 本阶段最重要的输出是渲染所需的几何信息,即渲染图元(rendering primitives)。通俗来讲,渲染图元可以是点、线、三角面等。
  2. 几何阶段
    • 处理所有和我们要绘制的几何相关的事情,例如决定需要绘制的图元是什么、怎样绘制,在哪里绘制。通常在cpu上进行。几何阶段负责和每个渲染图元打交道,进行逐顶点、逐多边形的操作。一个重要任务是把顶点坐标变换到屏幕空间中。
    • 输出:屏幕空间的二维顶点坐标、每个顶点对应的深度值、着色等相关信息。
  3. 光栅化阶段
    • 使用上阶段传递来的数据产生屏幕上的像素,也在GPU上运行。对输入的逐顶点数据进行插值,然后再进行逐像素处理。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值