【技美百人计划】图形 3.7 移动端TB(D)R架构基础

本文深入探讨了移动端图形渲染的TBDR(Tile-Based Deferred Rendering)架构,包括IMR(Immediate Mode Rendering)过程、TBDR的两个Defer阶段、TBR与IMR的对比以及执行顺序。重点介绍了TBR的优化策略,如减少带宽、优化overdraw,以及在Unity中的实践建议。此外,还提到了Alpha测试与混合在移动端的性能考虑,并提供了多个参考资料链接供进一步学习。
摘要由CSDN通过智能技术生成

笔记

IMR过程

在这里插入图片描述
直接和系统内存进行交互

TBDR过程

宏观上两个阶段

第一阶段:分图元
● 执行所有与几何相关的处理,并生成Primitive List(图元列表)
● 并且确定每个Tile(块)上有哪些Primitve(图元)
第二阶段:
● 执行光栅化、HSR及后续处理
● 并在完成后,将FrameBuffe从Tile Buffe写会到System Memory中

出自PowerVR
On-Chip Buffers : 片上内存
System Memort :系统内存

Tiling过程:将顶点处理形成的各种几何数据刷到系统内存
经过光栅化、像素shader和ROP,最终把结果刷到片上内存,最终片上内存再刷到系统内存

两个Defer

第一个Defer

Binning
确定哪些块元渲染哪些图元
在这里插入图片描述
■ 第二幅图里的红色三角形,只用一个块元就能渲染,所以它只会被分配到一个块元中
■ 第四幅图里的棕色三角形,需要多个块元才能渲染,所以它需要分配到9个块元中一起渲染

第二个Defer
  1. Qualcomm Adreno
    ○ 采用外置模块LRZ。
    ○ 在正常渲染管线之前,先多执行一次vs生成低精度depth texture,来提前剔除不可见的三角形(实现细节未公开)
    ○ 说人话,就是用硬件实现occlusion culling(遮挡剔除),功能类似软光栅中的遮挡剔除
    理解:将一种粗劣的early-z方法,提前到顶点阶段
  2. Mail的FPK
    ○采用Forward Pixel Kill技术
    ○ 位于管线的位置:发生在Early-z之后
    ○ 数据模型:先进先出的队列
    ○ 简单概括一下:
    ■ 队列中有4个Quad(可以理解为2×2像素的平面)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
04-26 4388
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值