level 10
IMR是即时渲染(纹理渲染)
TBR是延迟渲染(贴图渲染)
TBDR是分块延迟渲染(贴图渲染)
NV的ULP和VV的GC系——IMR
ARM的MALI——TBR
IMG家的SGX系——TBDR
高通家的Adreno——flex render
2014年04月19日 23点04分
1
level 10
MR和TBR/TBDR的最大区别在纹理贴图单元的操作,当然还有其他的不同点,本文只讲一点,
IMR直接通过GPU进行纹理计算,纹理贴图单元再把纹理贴上帧图像,缺点,出错时要通过带宽在帧缓存中直接进行修改,这么一来,带宽就会被吃得很紧。但优点是整个过程是顶点着色器构图—光栅化单元填充成素图—像素着色器填充像素—纹理贴图单元贴上【顶点着色器,像素着色器计算所得的】特效纹理。IMR在简单场景中有优势,这个优势仅对于移动端来说。
TBR和TBDR对比IMR多了个高速缓存,能把VS处理好的图形骨架细分化,并通过指针指令送入高速缓存中的存储单元中。再由渲染管线进行下一步操作。
2014年04月19日 23点04分
2
level 10
对比TBR ,TBDR是个进化,TBDR拥有HSR(hidden surface remote)隐藏面消除技术,用3Dfx进行隐藏面消除,据说能完全彻底消除,则是纹理贴图单元把数据包中常用的特效和贴图贴上帧图像,为了节省带宽(贴图都是被压缩的),在特效多,复杂的场景中有优势。这优势也只是对于移动端来说
TBDR的隐藏面消除是好评的,至于TBDR和TBR的分块渲染,高速缓存这一步明显会有延迟,过程是顶点着色器构图—分块—隐藏面消除—光栅化单元填充成素图—像素着色器填充像素—纹理贴图单元把被压缩的贴图直接通过带宽贴到帧缓存的帧图像上,
高通声称adreno的flexRender可以通过判断场景在IMR和TBR之间不断切换最优。这样可以聚集IMR和TBR的优势,既能省带宽,又能省shader资源,也能最大程度地减短延迟从而提升整体性能和功效
2014年04月19日 23点04分
3
level 10
结一下,IMR看上去做法很愚蠢,比较消耗带宽,但优点很明显,全过程几乎是没有延迟,但桌面级显卡的带宽都不成瓶颈,所以比较适用于桌面显卡
TBDR因为对带宽的要求相对比较小。
IMG之所以能在移动上占半壁江山,很大一个原因是凭借着TBDR的优势,别忘了,IMG当年可是在桌面被英伟达完虐的,
一方面可以看出TBDR在移动上是占优势,在桌面则是个残废的技术而已
2014年04月19日 23点04分
4
level 10
至于Opengl ES3.0中所支持的遮拦查询,听上去和HSR似乎一样,区别在于HSR是由独有的硬件3Dfx完成,Opengl ES3.0的遮拦查询则是由CPU完成,会占用CPU资源。其实HSR是在原图形架构中的消除被遮掩的多边形。遮拦查询则是作用于三维的图形架构,消除隐藏面并重新建立,生成图形架构。至于效率,的确是HSR相对会比较好
2014年04月19日 23点04分
5
level 4
楼主6582m和6582的cpu被阉割了哪些?gpu没有被阉割吧?
2014年04月22日 23点04分
7