Implement all remaining ASTC formats

This commit is contained in:
Billy Laws 2023-02-13 12:11:02 +00:00
parent d93c96de83
commit 2d56ed053d
2 changed files with 41 additions and 4 deletions

View File

@ -117,20 +117,33 @@ namespace skyline::gpu::interconnect {
TIC_FORMAT_CASE_ST(Astc4x4, Astc4x4, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc4x4, Astc4x4, Unorm);
TIC_FORMAT_CASE_ST(Astc5x4, Astc5x4, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc5x4, Astc5x4, Unorm);
TIC_FORMAT_CASE_ST(Astc5x5, Astc5x5, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc5x5, Astc5x5, Unorm);
TIC_FORMAT_CASE_ST(Astc6x5, Astc6x5, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc6x5, Astc6x5, Unorm);
TIC_FORMAT_CASE_ST(Astc6x6, Astc6x6, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc6x6, Astc6x6, Unorm);
TIC_FORMAT_CASE_ST(Astc8x5, Astc8x5, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc8x5, Astc8x5, Unorm);
TIC_FORMAT_CASE_ST(Astc8x6, Astc8x6, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc8x6, Astc8x6, Unorm);
TIC_FORMAT_CASE_ST(Astc8x8, Astc8x8, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc8x8, Astc8x8, Unorm);
TIC_FORMAT_CASE_ST(Astc10x5, Astc10x5, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc10x5, Astc10x5, Unorm);
TIC_FORMAT_CASE_ST(Astc10x6, Astc10x6, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc10x6, Astc10x6, Unorm);
TIC_FORMAT_CASE_ST(Astc10x8, Astc10x8, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc10x8, Astc10x8, Unorm);
TIC_FORMAT_CASE_ST(Astc10x10, Astc10x10, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc10x10, Astc10x10, Unorm);
TIC_FORMAT_CASE_ST(Astc12x10, Astc12x10, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc12x10, Astc12x10, Unorm);
TIC_FORMAT_CASE_ST(Astc12x12, Astc12x12, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc12x12, Astc12x12, Unorm);
TIC_FORMAT_CASE_ST_SRGB(Astc12x12, Astc12x12, Unorm);
TIC_FORMAT_CASE_ST(BC2, BC2, Unorm);
TIC_FORMAT_CASE_ST_SRGB(BC2, BC2, Unorm);
TIC_FORMAT_CASE_ST(BC3, BC3, Unorm);
@ -140,6 +153,7 @@ namespace skyline::gpu::interconnect {
TIC_FORMAT_CASE(Bc6HSfloat, Bc6HSfloat, Float, Float, Float, Float);
TIC_FORMAT_CASE_ST(BC7, BC7, Unorm);
TIC_FORMAT_CASE_ST_SRGB(BC7, BC7, Unorm);
TIC_FORMAT_CASE_INT_FLOAT(R32G32B32A32, R32G32B32A32);
default:

View File

@ -133,14 +133,26 @@ namespace skyline::gpu::format {
.blockWidth = 4,
.blockHeight = 4
);
FORMAT_SUFF_UNORM_SRGB(Astc5x4, 128, eAstc5x4, Block,
.blockWidth = 5,
.blockHeight = 4
);
FORMAT_SUFF_UNORM_SRGB(Astc5x5, 128, eAstc5x5, Block,
.blockWidth = 5,
.blockHeight = 5
);
FORMAT_SUFF_UNORM_SRGB(Astc6x5, 128, eAstc6x5, Block,
.blockWidth = 6,
.blockHeight = 5
);
FORMAT_SUFF_UNORM_SRGB(Astc6x6, 128, eAstc6x6, Block,
.blockWidth = 6,
.blockHeight = 6
);
FORMAT_SUFF_UNORM_SRGB(Astc8x5, 128, eAstc8x5, Block,
.blockWidth = 8,
.blockHeight = 5
);
FORMAT_SUFF_UNORM_SRGB(Astc8x6, 128, eAstc8x6, Block,
.blockWidth = 8,
.blockHeight = 6
@ -149,6 +161,14 @@ namespace skyline::gpu::format {
.blockWidth = 8,
.blockHeight = 8
);
FORMAT_SUFF_UNORM_SRGB(Astc10x5, 128, eAstc10x5, Block,
.blockWidth = 10,
.blockHeight = 5
);
FORMAT_SUFF_UNORM_SRGB(Astc10x6, 128, eAstc10x6, Block,
.blockWidth = 10,
.blockHeight = 6
);
FORMAT_SUFF_UNORM_SRGB(Astc10x8, 128, eAstc10x8, Block,
.blockWidth = 10,
.blockHeight = 8
@ -157,10 +177,13 @@ namespace skyline::gpu::format {
.blockWidth = 10,
.blockHeight = 10
);
FORMAT_SUFF_UNORM_SRGB(Astc12x10, 128, eAstc12x10, Block,
.blockWidth = 12,
.blockHeight = 10
);
FORMAT_SUFF_UNORM_SRGB(Astc12x12, 128, eAstc12x12, Block,
.blockWidth = 12,
.blockHeight = 12
.blockWidth = 12,
.blockHeight = 12
);
// Depth/Stencil Formats