Skip to content

Commit 18f704b

Browse files
author
GH Action
committed
1 parent 321abaf commit 18f704b

File tree

2 files changed

+56
-24
lines changed

2 files changed

+56
-24
lines changed

src/gfx.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -261,8 +261,10 @@ pub enum PixelFormat {
261261
Etc2Rgb8a1,
262262
Etc2Rgba8,
263263
Etc2Srgb8a8,
264-
Etc2Rg11,
265-
Etc2Rg11sn,
264+
EacR11,
265+
EacR11sn,
266+
EacRg11,
267+
EacRg11sn,
266268
Astc4x4Rgba,
267269
Astc4x4Srgba,
268270
Num,

src/sokol/c/sokol_gfx.h

Lines changed: 52 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1796,8 +1796,10 @@ typedef enum sg_pixel_format {
17961796
SG_PIXELFORMAT_ETC2_RGB8A1,
17971797
SG_PIXELFORMAT_ETC2_RGBA8,
17981798
SG_PIXELFORMAT_ETC2_SRGB8A8,
1799-
SG_PIXELFORMAT_ETC2_RG11,
1800-
SG_PIXELFORMAT_ETC2_RG11SN,
1799+
SG_PIXELFORMAT_EAC_R11,
1800+
SG_PIXELFORMAT_EAC_R11SN,
1801+
SG_PIXELFORMAT_EAC_RG11,
1802+
SG_PIXELFORMAT_EAC_RG11SN,
18011803

18021804
SG_PIXELFORMAT_ASTC_4x4_RGBA,
18031805
SG_PIXELFORMAT_ASTC_4x4_SRGBA,
@@ -4844,6 +4846,12 @@ inline int sg_append_buffer(sg_buffer buf_id, const sg_range& data) { return sg_
48444846
#ifndef GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2
48454847
#define GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 0x9276
48464848
#endif
4849+
#ifndef GL_COMPRESSED_R11_EAC
4850+
#define GL_COMPRESSED_R11_EAC 0x9270
4851+
#endif
4852+
#ifndef GL_COMPRESSED_SIGNED_R11_EAC
4853+
#define GL_COMPRESSED_SIGNED_R11_EAC 0x9271
4854+
#endif
48474855
#ifndef GL_COMPRESSED_RG11_EAC
48484856
#define GL_COMPRESSED_RG11_EAC 0x9272
48494857
#endif
@@ -6218,8 +6226,10 @@ _SOKOL_PRIVATE bool _sg_is_compressed_pixel_format(sg_pixel_format fmt) {
62186226
case SG_PIXELFORMAT_ETC2_RGB8A1:
62196227
case SG_PIXELFORMAT_ETC2_RGBA8:
62206228
case SG_PIXELFORMAT_ETC2_SRGB8A8:
6221-
case SG_PIXELFORMAT_ETC2_RG11:
6222-
case SG_PIXELFORMAT_ETC2_RG11SN:
6229+
case SG_PIXELFORMAT_EAC_R11:
6230+
case SG_PIXELFORMAT_EAC_R11SN:
6231+
case SG_PIXELFORMAT_EAC_RG11:
6232+
case SG_PIXELFORMAT_EAC_RG11SN:
62236233
case SG_PIXELFORMAT_ASTC_4x4_RGBA:
62246234
case SG_PIXELFORMAT_ASTC_4x4_SRGBA:
62256235
return true;
@@ -6347,6 +6357,8 @@ _SOKOL_PRIVATE int _sg_row_pitch(sg_pixel_format fmt, int width, int row_align)
63476357
case SG_PIXELFORMAT_ETC2_RGB8:
63486358
case SG_PIXELFORMAT_ETC2_SRGB8:
63496359
case SG_PIXELFORMAT_ETC2_RGB8A1:
6360+
case SG_PIXELFORMAT_EAC_R11:
6361+
case SG_PIXELFORMAT_EAC_R11SN:
63506362
pitch = ((width + 3) / 4) * 8;
63516363
pitch = pitch < 8 ? 8 : pitch;
63526364
break;
@@ -6361,8 +6373,8 @@ _SOKOL_PRIVATE int _sg_row_pitch(sg_pixel_format fmt, int width, int row_align)
63616373
case SG_PIXELFORMAT_BC7_SRGBA:
63626374
case SG_PIXELFORMAT_ETC2_RGBA8:
63636375
case SG_PIXELFORMAT_ETC2_SRGB8A8:
6364-
case SG_PIXELFORMAT_ETC2_RG11:
6365-
case SG_PIXELFORMAT_ETC2_RG11SN:
6376+
case SG_PIXELFORMAT_EAC_RG11:
6377+
case SG_PIXELFORMAT_EAC_RG11SN:
63666378
case SG_PIXELFORMAT_ASTC_4x4_RGBA:
63676379
case SG_PIXELFORMAT_ASTC_4x4_SRGBA:
63686380
pitch = ((width + 3) / 4) * 16;
@@ -6396,8 +6408,10 @@ _SOKOL_PRIVATE int _sg_num_rows(sg_pixel_format fmt, int height) {
63966408
case SG_PIXELFORMAT_ETC2_RGB8A1:
63976409
case SG_PIXELFORMAT_ETC2_RGBA8:
63986410
case SG_PIXELFORMAT_ETC2_SRGB8A8:
6399-
case SG_PIXELFORMAT_ETC2_RG11:
6400-
case SG_PIXELFORMAT_ETC2_RG11SN:
6411+
case SG_PIXELFORMAT_EAC_R11:
6412+
case SG_PIXELFORMAT_EAC_R11SN:
6413+
case SG_PIXELFORMAT_EAC_RG11:
6414+
case SG_PIXELFORMAT_EAC_RG11SN:
64016415
case SG_PIXELFORMAT_BC2_RGBA:
64026416
case SG_PIXELFORMAT_BC3_RGBA:
64036417
case SG_PIXELFORMAT_BC3_SRGBA:
@@ -7319,9 +7333,13 @@ _SOKOL_PRIVATE GLenum _sg_gl_teximage_format(sg_pixel_format fmt) {
73197333
return GL_COMPRESSED_RGBA8_ETC2_EAC;
73207334
case SG_PIXELFORMAT_ETC2_SRGB8A8:
73217335
return GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC;
7322-
case SG_PIXELFORMAT_ETC2_RG11:
7336+
case SG_PIXELFORMAT_EAC_R11:
7337+
return GL_COMPRESSED_R11_EAC;
7338+
case SG_PIXELFORMAT_EAC_R11SN:
7339+
return GL_COMPRESSED_SIGNED_R11_EAC;
7340+
case SG_PIXELFORMAT_EAC_RG11:
73237341
return GL_COMPRESSED_RG11_EAC;
7324-
case SG_PIXELFORMAT_ETC2_RG11SN:
7342+
case SG_PIXELFORMAT_EAC_RG11SN:
73257343
return GL_COMPRESSED_SIGNED_RG11_EAC;
73267344
case SG_PIXELFORMAT_ASTC_4x4_RGBA:
73277345
return GL_COMPRESSED_RGBA_ASTC_4x4_KHR;
@@ -7403,8 +7421,10 @@ _SOKOL_PRIVATE GLenum _sg_gl_teximage_internal_format(sg_pixel_format fmt) {
74037421
case SG_PIXELFORMAT_ETC2_RGB8A1: return GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2;
74047422
case SG_PIXELFORMAT_ETC2_RGBA8: return GL_COMPRESSED_RGBA8_ETC2_EAC;
74057423
case SG_PIXELFORMAT_ETC2_SRGB8A8: return GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC;
7406-
case SG_PIXELFORMAT_ETC2_RG11: return GL_COMPRESSED_RG11_EAC;
7407-
case SG_PIXELFORMAT_ETC2_RG11SN: return GL_COMPRESSED_SIGNED_RG11_EAC;
7424+
case SG_PIXELFORMAT_EAC_R11: return GL_COMPRESSED_R11_EAC;
7425+
case SG_PIXELFORMAT_EAC_R11SN: return GL_COMPRESSED_SIGNED_R11_EAC;
7426+
case SG_PIXELFORMAT_EAC_RG11: return GL_COMPRESSED_RG11_EAC;
7427+
case SG_PIXELFORMAT_EAC_RG11SN: return GL_COMPRESSED_SIGNED_RG11_EAC;
74087428
case SG_PIXELFORMAT_ASTC_4x4_RGBA: return GL_COMPRESSED_RGBA_ASTC_4x4_KHR;
74097429
case SG_PIXELFORMAT_ASTC_4x4_SRGBA: return GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR;
74107430
default: SOKOL_UNREACHABLE; return 0;
@@ -7549,8 +7569,10 @@ _SOKOL_PRIVATE void _sg_gl_init_pixelformats_etc2(void) {
75497569
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RGB8A1]);
75507570
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RGBA8]);
75517571
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_SRGB8A8]);
7552-
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RG11]);
7553-
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RG11SN]);
7572+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_R11]);
7573+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_R11SN]);
7574+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_RG11]);
7575+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_RG11SN]);
75547576
}
75557577

75567578
_SOKOL_PRIVATE void _sg_gl_init_pixelformats_astc(void) {
@@ -11638,8 +11660,10 @@ _SOKOL_PRIVATE MTLPixelFormat _sg_mtl_pixel_format(sg_pixel_format fmt) {
1163811660
case SG_PIXELFORMAT_ETC2_RGB8A1: return MTLPixelFormatETC2_RGB8A1;
1163911661
case SG_PIXELFORMAT_ETC2_RGBA8: return MTLPixelFormatEAC_RGBA8;
1164011662
case SG_PIXELFORMAT_ETC2_SRGB8A8: return MTLPixelFormatEAC_RGBA8_sRGB;
11641-
case SG_PIXELFORMAT_ETC2_RG11: return MTLPixelFormatEAC_RG11Unorm;
11642-
case SG_PIXELFORMAT_ETC2_RG11SN: return MTLPixelFormatEAC_RG11Snorm;
11663+
case SG_PIXELFORMAT_EAC_R11: return MTLPixelFormatEAC_R11Unorm;
11664+
case SG_PIXELFORMAT_EAC_R11SN: return MTLPixelFormatEAC_R11Snorm;
11665+
case SG_PIXELFORMAT_EAC_RG11: return MTLPixelFormatEAC_RG11Unorm;
11666+
case SG_PIXELFORMAT_EAC_RG11SN: return MTLPixelFormatEAC_RG11Snorm;
1164311667
case SG_PIXELFORMAT_ASTC_4x4_RGBA: return MTLPixelFormatASTC_4x4_LDR;
1164411668
case SG_PIXELFORMAT_ASTC_4x4_SRGBA: return MTLPixelFormatASTC_4x4_sRGB;
1164511669
#endif
@@ -12113,8 +12137,10 @@ _SOKOL_PRIVATE void _sg_mtl_init_caps(void) {
1211312137
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RGB8A1]);
1211412138
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RGBA8]);
1211512139
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_SRGB8A8]);
12116-
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RG11]);
12117-
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RG11SN]);
12140+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_R11]);
12141+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_R11SN]);
12142+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_RG11]);
12143+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_RG11SN]);
1211812144
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ASTC_4x4_RGBA]);
1211912145
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ASTC_4x4_SRGBA]);
1212012146

@@ -13518,8 +13544,10 @@ _SOKOL_PRIVATE WGPUTextureFormat _sg_wgpu_textureformat(sg_pixel_format p) {
1351813544
case SG_PIXELFORMAT_ETC2_RGBA8: return WGPUTextureFormat_ETC2RGBA8Unorm;
1351913545
case SG_PIXELFORMAT_ETC2_SRGB8: return WGPUTextureFormat_ETC2RGB8UnormSrgb;
1352013546
case SG_PIXELFORMAT_ETC2_SRGB8A8: return WGPUTextureFormat_ETC2RGBA8UnormSrgb;
13521-
case SG_PIXELFORMAT_ETC2_RG11: return WGPUTextureFormat_EACR11Unorm;
13522-
case SG_PIXELFORMAT_ETC2_RG11SN: return WGPUTextureFormat_EACR11Snorm;
13547+
case SG_PIXELFORMAT_EAC_R11: return WGPUTextureFormat_EACR11Unorm;
13548+
case SG_PIXELFORMAT_EAC_R11SN: return WGPUTextureFormat_EACR11Snorm;
13549+
case SG_PIXELFORMAT_EAC_RG11: return WGPUTextureFormat_EACRG11Unorm;
13550+
case SG_PIXELFORMAT_EAC_RG11SN: return WGPUTextureFormat_EACRG11Snorm;
1352313551
case SG_PIXELFORMAT_RGB9E5: return WGPUTextureFormat_RGB9E5Ufloat;
1352413552
case SG_PIXELFORMAT_ASTC_4x4_RGBA: return WGPUTextureFormat_ASTC4x4Unorm;
1352513553
case SG_PIXELFORMAT_ASTC_4x4_SRGBA: return WGPUTextureFormat_ASTC4x4UnormSrgb;
@@ -13758,8 +13786,10 @@ _SOKOL_PRIVATE void _sg_wgpu_init_caps(void) {
1375813786
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RGB8A1]);
1375913787
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RGBA8]);
1376013788
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_SRGB8A8]);
13761-
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RG11]);
13762-
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_ETC2_RG11SN]);
13789+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_R11]);
13790+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_R11SN]);
13791+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_RG11]);
13792+
_sg_pixelformat_sf(&_sg.formats[SG_PIXELFORMAT_EAC_RG11SN]);
1376313793
}
1376413794

1376513795
if (wgpuDeviceHasFeature(_sg.wgpu.dev, WGPUFeatureName_TextureCompressionASTC)) {

0 commit comments

Comments
 (0)