Hi,
Looking at some of the earlier posts regarding using EGLImage. It is currently possible to create an EGLImage from an RGBA GraphicBuffer on ARM GPUs and then use it as texture via glEGLImageTargetTexture2DOES.
Just wondering is it possible to create EGLImage so that it could be used with a compressed texture format like ETC2, ASTC etc.
Thanks.
Hi, It isn't possible to use external images with compressed formats like ETC2 and ASTC.
Cheers, Pete
Hi Pete,
Thanks for your response. I understand that currently EGLImage will not work with compressed formats since GrapghicBuffer does not understand any compressed formats. I was wondering what needs to change if such a use case has to be supported in future?
I am thinking following need to change, please correct me if I miss something:
1- Add new pixel format to GraphicBuffer so that it can be allocated with proper size for compressed formats
2- Extend EGLImage so that it can accept GraphicBuffer with new pixel format
3- Bind the EGLImage as texture via glEGLImageTargetTexture2DOEStexture and then upload compressed data via glCompressedSubImage2D()
Thanks,
The drivers would need to understand the compressed import, so just changing the platform layer isn't enough - you'd need to change both sides of the interface as it's effectively an Android API compatibility break.
HTH, Pete