| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> 图形学进阶——移动端TB(D)R架构基础 -> 正文阅读 |
|
[游戏开发]图形学进阶——移动端TB(D)R架构基础 |
移动端TB(D)R架构基础百人计划学习链接:【技术美术百人计划】图形 3.7 移动端TB(D)R架构基础 一、当前移动端的设备概况1. 移动端CPU占比2. 移动端GPU占比3. 各类电子设备功耗对比4. 带宽比较二、专有名词解释1. SOC(System on Chip)System on Chip(Soc)Soc是把CPU、GPU、内存、通信基带、GPS模块等等整合在一起的芯片称呼。 2. 物理内存(System Memory)Soc中GPU和CPU共用一块片内LPDDR物理内存,就是我们常说的手机内存,也叫System Memory,大概几个G。 此外CPU和GPU还分别有自己的高速SRAM的Cache缓存,也叫On-chip Memory,一般几百K~几M。 不同距离的内存访问存在不同的时间消耗,距离越近消耗越低,读取System Memory的时间消耗大概是On-chip Memory的几倍到几十倍。 PS:手机上GPU和CPU是共享一个内存地址空间(PC上一般分为内存和显存) 3 .On-Chip Buffer在TB(D)R架构下会存储Tile的颜色、深度和模板缓冲,读写修改都非常快。 如果Load/Store指令中缓冲需要被Preserve,将会被写入一份到System Memory中。 4 .Stall当一个GPU核心的两次计算结果之间有依赖关系而必须串行时,等待的过程便是Stall。 5.FillRate 像素填充率像素填充率 = ROP运行的时钟频率 x ROP的个数 x 每个时钟ROP可以处理的像素个数 三、关于TBDR什么是TBDR? TBR(Tile-Based (Deferred) Rendering)是目前主流的移动GPU渲染架构,对应一般PC上的GPU渲染架构则是IMR(Immediate Mode Rendering )。 通俗的讲就是:屏幕被分成很多块进行渲染 TBR和TBDR的区别
四、关于IMR
渲染管线如下:直接和系统内存进行交互 五、TB(D)R详细的渲染流程1. TB(D)R宏观上总共分2个阶段
2. TBR与IMR的一些对比
3 .TBR的优缺点TBR的核心目的是降低带宽,减少功耗,但渲染帧率上并不比IMR快 优点:
缺点:
4 .TBDR中的D——Defer是什么Bining过程(类似四叉树)/第一个Defer 将需要处理的图元分配到对应的块中,来进行处理 Android的处理 六、TB(D)R的优化建议1. 记得不使用Framebuffer的时候clear或者discard主要是清空积存在tile buff上的中间数据,所以在unity里面对render texture的使用也特别说明了一下,当不再使用这个rt之前,调用一次Discard。在OpenGL ES上善用glClear,gllnvalidateFrameBuffer避免不必要的Resolve(就是tile buff刷新到system memeory)行为 2. 要在一帧里面频繁的切换framebuffer的绑定本质上就是减少tile buffer 和system memory之间的 的stall(同步) 操作 3. 对于移动平台,建议你使用 Alpha 混合,而非 Alpha 测试在实际使用中,你应该分析并比较 Alpha 测试和 Alpha 混合的表现,因为这取决于具体内容,因此需要测量,通常在移动平台上应避免使用 Alpha 混合来实现透明。需要进行 Alpha 混合时,尝试缩小混合区域的覆盖范围 4. 其余优化
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/28 11:46:19- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |