在Android GLSurfaceView上设置PixelFormat时,例如:
glSurfaceView.getHolder().setFormat(PixelFormat.RGBA_8888);
特定设备的特定PixelFormats是否有任何限制,或者所有PixelFormats都适用于所有设备?
如果有限制,那么如何找出当前设备支持哪些PixelFormats?
我没有看到任何明确概述任何给定PixelFormat
的设备支持级别的文档。但是如果你看看documentation for PixelFormat,你会在右边看到一个添加API级别的标签。
我相信这意味着他们的支持基于设备上运行的Android API级别,而不是设备本身。
例如RGBA_8888
是Added in API level 1
所以100%可用。但RGBA_F16
是Added in API level 26
,所以只有运行Android 8.0.0 (Oreo)
或更高版本的设备才会支持它。