summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLingfeng Yang <lfy@google.com>2021-05-14 18:42:52 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-05-14 18:42:52 +0000
commitd6ac02d8467fd4352eed12982578641511d450e6 (patch)
treed22d9d982b110d339ec5639abb12b5f58bdc02ee
parent86f0481f8779e56cb4480a5a7f2b2278ab9041a6 (diff)
parentc2515aaf47893aceb4e08c7719c6dbe146f50b28 (diff)
downloadvulkan-cereal-android12-mainline-mediaprovider-release.tar.gz
gles: remove pallete textures from compressed texture format support list for gles2 am: 41ab282144 am: 5d41f08df5 am: 7bf0ce9198 am: c2515aaf47android-mainline-12.0.0_r99android-mainline-12.0.0_r98android-mainline-12.0.0_r97android-mainline-12.0.0_r96android-mainline-12.0.0_r95android-mainline-12.0.0_r94android-mainline-12.0.0_r93android-mainline-12.0.0_r92android-mainline-12.0.0_r91android-mainline-12.0.0_r90android-mainline-12.0.0_r9android-mainline-12.0.0_r89android-mainline-12.0.0_r88android-mainline-12.0.0_r87android-mainline-12.0.0_r86android-mainline-12.0.0_r85android-mainline-12.0.0_r84android-mainline-12.0.0_r83android-mainline-12.0.0_r82android-mainline-12.0.0_r81android-mainline-12.0.0_r80android-mainline-12.0.0_r8android-mainline-12.0.0_r79android-mainline-12.0.0_r78android-mainline-12.0.0_r77android-mainline-12.0.0_r76android-mainline-12.0.0_r75android-mainline-12.0.0_r74android-mainline-12.0.0_r73android-mainline-12.0.0_r72android-mainline-12.0.0_r71android-mainline-12.0.0_r70android-mainline-12.0.0_r7android-mainline-12.0.0_r69android-mainline-12.0.0_r68android-mainline-12.0.0_r67android-mainline-12.0.0_r66android-mainline-12.0.0_r65android-mainline-12.0.0_r64android-mainline-12.0.0_r63android-mainline-12.0.0_r62android-mainline-12.0.0_r61android-mainline-12.0.0_r60android-mainline-12.0.0_r6android-mainline-12.0.0_r59android-mainline-12.0.0_r58android-mainline-12.0.0_r57android-mainline-12.0.0_r56android-mainline-12.0.0_r53android-mainline-12.0.0_r52android-mainline-12.0.0_r51android-mainline-12.0.0_r50android-mainline-12.0.0_r5android-mainline-12.0.0_r49android-mainline-12.0.0_r48android-mainline-12.0.0_r47android-mainline-12.0.0_r46android-mainline-12.0.0_r45android-mainline-12.0.0_r44android-mainline-12.0.0_r43android-mainline-12.0.0_r42android-mainline-12.0.0_r41android-mainline-12.0.0_r40android-mainline-12.0.0_r39android-mainline-12.0.0_r38android-mainline-12.0.0_r37android-mainline-12.0.0_r35android-mainline-12.0.0_r34android-mainline-12.0.0_r33android-mainline-12.0.0_r32android-mainline-12.0.0_r31android-mainline-12.0.0_r30android-mainline-12.0.0_r3android-mainline-12.0.0_r29android-mainline-12.0.0_r28android-mainline-12.0.0_r27android-mainline-12.0.0_r26android-mainline-12.0.0_r25android-mainline-12.0.0_r24android-mainline-12.0.0_r23android-mainline-12.0.0_r22android-mainline-12.0.0_r21android-mainline-12.0.0_r20android-mainline-12.0.0_r2android-mainline-12.0.0_r19android-mainline-12.0.0_r18android-mainline-12.0.0_r17android-mainline-12.0.0_r16android-mainline-12.0.0_r15android-mainline-12.0.0_r14android-mainline-12.0.0_r13android-mainline-12.0.0_r126android-mainline-12.0.0_r125android-mainline-12.0.0_r124android-mainline-12.0.0_r123android-mainline-12.0.0_r122android-mainline-12.0.0_r121android-mainline-12.0.0_r120android-mainline-12.0.0_r12android-mainline-12.0.0_r119android-mainline-12.0.0_r118android-mainline-12.0.0_r117android-mainline-12.0.0_r116android-mainline-12.0.0_r115android-mainline-12.0.0_r114android-mainline-12.0.0_r113android-mainline-12.0.0_r110android-mainline-12.0.0_r11android-mainline-12.0.0_r109android-mainline-12.0.0_r108android-mainline-12.0.0_r107android-mainline-12.0.0_r106android-mainline-12.0.0_r105android-mainline-12.0.0_r104android-mainline-12.0.0_r103android-mainline-12.0.0_r102android-mainline-12.0.0_r101android-mainline-12.0.0_r100android-mainline-12.0.0_r10android-mainline-12.0.0_r1aml_wif_311811030aml_tz3_311312010aml_tet_311811050aml_sdk_311710000aml_pco_311011000aml_mpr_311911090aml_doc_310851020android12-mainline-wifi-releaseandroid12-mainline-tethering-releaseandroid12-mainline-statsd-releaseandroid12-mainline-sdkext-releaseandroid12-mainline-resolv-releaseandroid12-mainline-permission-releaseandroid12-mainline-neuralnetworks-releaseandroid12-mainline-networkstack-releaseandroid12-mainline-mediaprovider-releaseandroid12-mainline-media-swcodec-releaseandroid12-mainline-media-releaseandroid12-mainline-ipsec-releaseandroid12-mainline-extservices-releaseandroid12-mainline-documentsui-releaseandroid12-mainline-conscrypt-releaseandroid12-mainline-cellbroadcast-releaseandroid12-mainline-captiveportallogin-releaseandroid12-mainline-art-releaseandroid12-mainline-adbd-release
Original change: https://android-review.googlesource.com/c/device/generic/vulkan-cereal/+/1708268 Change-Id: I59d8fe73c7e515b5efd363133c2723eadec0b15e
-rw-r--r--stream-servers/glestranslator/GLES_CM/GLEScmImp.cpp22
-rw-r--r--stream-servers/glestranslator/GLES_V2/GLESv2Imp.cpp6
-rw-r--r--stream-servers/glestranslator/GLcommon/TextureUtils.cpp40
-rw-r--r--stream-servers/glestranslator/include/GLcommon/TextureUtils.h2
4 files changed, 35 insertions, 35 deletions
diff --git a/stream-servers/glestranslator/GLES_CM/GLEScmImp.cpp b/stream-servers/glestranslator/GLES_CM/GLEScmImp.cpp
index 24797502..fb00d415 100644
--- a/stream-servers/glestranslator/GLES_CM/GLEScmImp.cpp
+++ b/stream-servers/glestranslator/GLES_CM/GLEScmImp.cpp
@@ -1064,14 +1064,14 @@ GL_API void GL_APIENTRY glGetBooleanv( GLenum pname, GLboolean *params) {
}
break;
case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
- *params = (GLboolean)getCompressedFormats(NULL);
+ *params = (GLboolean)getCompressedFormats(1, NULL);
break;
case GL_COMPRESSED_TEXTURE_FORMATS:
{
- int nparams = getCompressedFormats(NULL);
+ int nparams = getCompressedFormats(1, NULL);
if (nparams>0) {
int * iparams = new int[nparams];
- getCompressedFormats(iparams);
+ getCompressedFormats(1, iparams);
for (int i=0; i<nparams; i++) params[i] = (GLboolean)iparams[i];
delete [] iparams;
}
@@ -1162,15 +1162,15 @@ GL_API void GL_APIENTRY glGetFixedv( GLenum pname, GLfixed *params) {
glGetFloatv(pname,&fParams[0]);
break;
case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
- *params = I2X(getCompressedFormats(NULL));
+ *params = I2X(getCompressedFormats(1, NULL));
return;
break;
case GL_COMPRESSED_TEXTURE_FORMATS:
{
- int nparams = getCompressedFormats(NULL);
+ int nparams = getCompressedFormats(1, NULL);
if (nparams>0) {
int * iparams = new int[nparams];
- getCompressedFormats(iparams);
+ getCompressedFormats(1, iparams);
for (int i=0; i<nparams; i++) params[i] = I2X(iparams[i]);
delete [] iparams;
}
@@ -1208,14 +1208,14 @@ GL_API void GL_APIENTRY glGetFloatv( GLenum pname, GLfloat *params) {
*params = (GLfloat)i;
break;
case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
- *params = (GLfloat)getCompressedFormats(NULL);
+ *params = (GLfloat)getCompressedFormats(1, NULL);
break;
case GL_COMPRESSED_TEXTURE_FORMATS:
{
- int nparams = getCompressedFormats(NULL);
+ int nparams = getCompressedFormats(1, NULL);
if (nparams>0) {
int * iparams = new int[nparams];
- getCompressedFormats(iparams);
+ getCompressedFormats(1, iparams);
for (int i=0; i<nparams; i++) params[i] = (GLfloat)iparams[i];
delete [] iparams;
}
@@ -1266,10 +1266,10 @@ GL_API void GL_APIENTRY glGetIntegerv( GLenum pname, GLint *params) {
}
break;
case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
- *params = getCompressedFormats(NULL);
+ *params = getCompressedFormats(1, NULL);
break;
case GL_COMPRESSED_TEXTURE_FORMATS:
- getCompressedFormats(params);
+ getCompressedFormats(1, params);
break;
case GL_MAX_CLIP_PLANES:
ctx->dispatcher().glGetIntegerv(pname,params);
diff --git a/stream-servers/glestranslator/GLES_V2/GLESv2Imp.cpp b/stream-servers/glestranslator/GLES_V2/GLESv2Imp.cpp
index 4b2855ea..b31fa345 100644
--- a/stream-servers/glestranslator/GLES_V2/GLESv2Imp.cpp
+++ b/stream-servers/glestranslator/GLES_V2/GLESv2Imp.cpp
@@ -2086,14 +2086,14 @@ static void s_glStateQueryTv(bool es2, GLenum pname, T* params, GLStateQueryFunc
break;
case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
- *params = (T)getCompressedFormats(NULL);
+ *params = (T)getCompressedFormats(2, NULL);
break;
case GL_COMPRESSED_TEXTURE_FORMATS:
{
- int nparams = getCompressedFormats(NULL);
+ int nparams = getCompressedFormats(2, NULL);
if (nparams > 0) {
int* iparams = new int[nparams];
- getCompressedFormats(iparams);
+ getCompressedFormats(2, iparams);
for (int i = 0; i < nparams; i++) {
params[i] = (T)iparams[i];
}
diff --git a/stream-servers/glestranslator/GLcommon/TextureUtils.cpp b/stream-servers/glestranslator/GLcommon/TextureUtils.cpp
index 6e61e64a..f47d6cd4 100644
--- a/stream-servers/glestranslator/GLcommon/TextureUtils.cpp
+++ b/stream-servers/glestranslator/GLcommon/TextureUtils.cpp
@@ -64,26 +64,30 @@ static constexpr size_t kASTCFormatsCount = 28;
EXPAND_MACRO(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR, astc_codec::FootprintType::k12x10, true) \
EXPAND_MACRO(GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR, astc_codec::FootprintType::k12x12, true) \
-int getCompressedFormats(int* formats) {
+int getCompressedFormats(int majorVersion, int* formats) {
static constexpr size_t kCount = MAX_SUPPORTED_PALETTE + MAX_ETC_SUPPORTED + kASTCFormatsCount;
+ int res = kCount;
+
+ if (majorVersion > 1) {
+ res -= MAX_SUPPORTED_PALETTE;
+ }
if (formats) {
size_t i = 0;
- // Palette
- formats[i++] = GL_PALETTE4_RGBA8_OES;
- formats[i++] = GL_PALETTE4_RGBA4_OES;
- formats[i++] = GL_PALETTE8_RGBA8_OES;
- formats[i++] = GL_PALETTE8_RGBA4_OES;
- formats[i++] = GL_PALETTE4_RGB8_OES;
- formats[i++] = GL_PALETTE8_RGB8_OES;
- formats[i++] = GL_PALETTE4_RGB5_A1_OES;
- formats[i++] = GL_PALETTE8_RGB5_A1_OES;
- formats[i++] = GL_PALETTE4_R5_G6_B5_OES;
- formats[i++] = GL_PALETTE8_R5_G6_B5_OES;
-
- assert(i == MAX_SUPPORTED_PALETTE &&
- "getCompressedFormats size mismatch");
+ if (1 == majorVersion) {
+ // Palette
+ formats[i++] = GL_PALETTE4_RGBA8_OES;
+ formats[i++] = GL_PALETTE4_RGBA4_OES;
+ formats[i++] = GL_PALETTE8_RGBA8_OES;
+ formats[i++] = GL_PALETTE8_RGBA4_OES;
+ formats[i++] = GL_PALETTE4_RGB8_OES;
+ formats[i++] = GL_PALETTE8_RGB8_OES;
+ formats[i++] = GL_PALETTE4_RGB5_A1_OES;
+ formats[i++] = GL_PALETTE8_RGB5_A1_OES;
+ formats[i++] = GL_PALETTE4_R5_G6_B5_OES;
+ formats[i++] = GL_PALETTE8_R5_G6_B5_OES;
+ }
// ETC
formats[i++] = GL_ETC1_RGB8_OES;
@@ -99,9 +103,6 @@ int getCompressedFormats(int* formats) {
formats[i++] = GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC;
formats[i++] = GL_COMPRESSED_R11_EAC;
- assert(i == MAX_SUPPORTED_PALETTE + MAX_ETC_SUPPORTED &&
- "getCompressedFormats size mismatch");
-
// ASTC
#define ASTC_FORMAT(typeName, footprintType, srgbValue) \
formats[i++] = typeName;
@@ -109,10 +110,9 @@ int getCompressedFormats(int* formats) {
ASTC_FORMATS_LIST(ASTC_FORMAT)
#undef ASTC_FORMAT
- assert(i == kCount && "getCompressedFormats size mismatch");
}
- return kCount;
+ return res;
}
ETC2ImageFormat getEtcFormat(GLenum internalformat) {
diff --git a/stream-servers/glestranslator/include/GLcommon/TextureUtils.h b/stream-servers/glestranslator/include/GLcommon/TextureUtils.h
index 641011ea..b5034d0a 100644
--- a/stream-servers/glestranslator/include/GLcommon/TextureUtils.h
+++ b/stream-servers/glestranslator/include/GLcommon/TextureUtils.h
@@ -37,7 +37,7 @@ bool isEtc2Format(GLenum internalformat);
bool isBptcFormat(GLenum internalformat);
bool isS3tcFormat(GLenum internalformat);
bool isPaletteFormat(GLenum internalformat);
-int getCompressedFormats(int* formats);
+int getCompressedFormats(int majorVersion, int* formats);
void doCompressedTexImage2D(GLEScontext* ctx, GLenum target, GLint level,
GLenum internalformat, GLsizei width,
GLsizei height, GLint border, GLsizei imageSize,