PowerVR的优点和缺点是什么?

时间:2011-07-21 04:40:42

标签: java android powervr-sgx

我的游戏引擎最近添加了PowerVR(PVR)支持,经过对Google和维基百科的一些搜索,我只知道PVR的定义,但我不知道它的用途是什么,它的优点和缺点是什么。我正在为Android开发游戏,我应该使用什么,PNG还是PVR?

1 个答案:

答案 0 :(得分:5)

(PowerVR是Imagination Technologies Ltd.的品牌名称,指的是他们的图形加速技术.PVR是PowerVR Insider SDK中使用的纹理容器格式.PVRTC是PowerVR的纹理压缩方案,我认为你对它感兴趣......如果你不是,请道歉

PVRTC是一种运行时纹理压缩格式,用于PowerVR图形加速器(很多Android平台都有其中之一)。与未压缩的32位纹理相比,PVRTC提供8x或16x压缩,每像素4位或每像素2位模式。因为它是运行时纹理压缩方案,所以不需要在图形核心本身之外的任何阶段解压缩(并且那里有专用电路),因此磁盘上的数据较小,上传到GL的数据较小,较小的内存和渲染时使用较小 - 几乎在所有方面都更好,更快。在移动系统上,内存带宽非常宝贵并且通常是图形的性能瓶颈,它可以对您的帧速率(以及电源使用 - 内存访问占用电量)产生巨大影响。

缺点:

  • PVRTC往往比磁盘上的PNG大 - PVRTC数据拉链(例如)非常适合磁盘存储。
  • PVRTC是有损压缩 - 与源图像相比,PVRTC纹理中有时会出现伪影。 PNG是无损的,因此问题不存在
  • PVRTC不能与PowerVR之外的其他图形加速一起使用(目前) - 查看其他平台的DXT / S3TC(更大)或ETC(无alpha)压缩。
  • 只有方形,二维力矩纹理可能有效 - 例如32x32,512x512等。
  • 压缩可能很慢

PNG不是运行时格式,因此PNG压缩优于未压缩图像的唯一优势是存储在磁盘上(或通过网络发送等) - PNG图像数据必须由CPU解压缩它可以传递给GL或以任何方式绘制,即PNG与 slow 一样,你可以在这些平台上获得纹理。

PNG是无损的,也支持alpha通道。

因此...

为获得最佳性能,请尽可能使用PVRTC,如果不能,可以使用其他版本的纹理 - 例如压缩文物太明显或者你正在运行的平台不支持它。

进一步阅读:

制作PVRTC纹理:

希望有帮助...