移动GPU渲染原理的流派——IMR、TBR及TBDR
移動GPU渲染原理的流派——IMR、TBR及TBDR
移動GPU相對桌面級的GPU僅僅能算是未長大的小孩子,盡管小孩子在某些場合也能比成人更有優勢(比方雜技、柔術之類的表演)。但在力量上還是有先天的區別,主要表如今理論性能和帶寬上。
與桌面GPU動輒256bit甚至384bit的位寬、1.2-1.5GHz的高頻顯存相比。移動GPU不僅要和CPU共享內存帶寬,并且普遍使用的是雙32bit位寬、LPDDR2-800或1066左右的內存系統。總帶寬普遍在10GB/s以內。悲催的Tegra 3使用的還是單通道內存模式,搭配DDR3L的帶寬只是6.4GB/s。
眼下GPU性能最強大的iPad 4帶寬也只是17GB/s(圖片源于Anandtech)
移動處理器中內存帶寬最高的是iPad 3/4。由于他們使用Retina屏幕。2048x1536的高分辨率對GPU帶寬要求更高,只是就算是這兩款產品,17GB/s的帶寬與PC顯卡上動輒200GB/s以上的帶寬相比還是小兒科了。
沒有高帶寬就沒有大容量紋理數據,也就不會有高畫質。雖然帶寬不是制約移動GPU發展的唯一因素。可是在眼下的限制下。移動GPU廠商關心的頭等大事就是怎樣在盡可能小的帶寬需求下提升GPU性能及畫質,前面介紹的紋理壓縮是一個方法,另一種就是使用不同的渲染方式。主要有IMR、TBR及TBDR等。
傷不起的“馬上渲染模式”——IMR
IMR(Immediate Mode Rendering)就如字面意思一樣——提交的每一個渲染要求都會馬上開始,這是一種簡單而又粗暴的思路。長處缺點都非常明顯。假設不用為性能擔憂,這樣的方式會非常省事。可是IMR的渲染實行的是無區別對待,那些遮蔽處理的部分依舊會被渲染處理器。這也導致無意義的讀寫操作很多其它。浪費了大量性能和帶寬。
總之,IMR這樣的渲染方式在移動GPU上的評價僅僅能是“負分,滾粗!
”。
變聰明了的“貼圖渲染”——TBR
IMR傻大粗的做法不可取,那就來一個聰明點的方式——TBR(Tile Based Rendering,貼圖渲染),它將須要渲染的畫面分成一個個的區塊(tile),每一個區塊的坐標通過中間緩沖器以列表形式保存在系統內存中。
這樣的渲染方式的優點就是相對IMR降低了不必要的渲染任務。缺點就是遮蔽碎片依舊會少量存在,并且須要中間緩沖器。
TBR渲染將游戲畫面分為不同的區塊
再次進化的渲染方式登場——TBDR
TBR盡管比IMR聰明多了。只是還是存在不少缺陷,TBDR(Tile Based Deferred Rendering,貼圖延遲渲染)閃亮登場,它跟TBR原理相似,可是使用的是延遲渲染(Deferred Rendering),合并了完美像素。通過HSR(Hidden Surface Removal,隱藏面消除)等進一步降低了不須要渲染的過程,降低了帶寬需求。實際上這些改變和PC上的渲染有些相似。
TBDR渲染的一個關鍵是延遲渲染
其它幾家廠商用的都是TBR技術,TBDR主要是Imagination在使用,這也是他們最大的籌碼之中的一個。
在微軟的DX11.1升級中也有提到支持TBDR,由于Windows 8系統還專門為平板和觸控優化,對TBDR這樣的移動平臺經常使用的技術加以優化也是必定的。
總結
以上是生活随笔為你收集整理的移动GPU渲染原理的流派——IMR、TBR及TBDR的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解决Visual Studio (VS)
- 下一篇: 人民日报:手机预置软件过多且无法卸载侵害