mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-12-28 10:15:28 +03:00
Implement D24S8 + R11G11B10 Formats
This commit is contained in:
parent
bd718175ce
commit
90a1b3348c
@ -203,6 +203,7 @@ namespace skyline::gpu::interconnect {
|
||||
FORMAT_SAME_CASE(B5G6R5, Unorm);
|
||||
FORMAT_SAME_CASE(B5G5R5A1, Unorm);
|
||||
FORMAT_SAME_INT_FLOAT_CASE(R32);
|
||||
FORMAT_SAME_CASE(R11G11B10, Float);
|
||||
FORMAT_SAME_NORM_INT_FLOAT_CASE(R16G16);
|
||||
FORMAT_SAME_CASE(R8G8B8A8, Unorm);
|
||||
FORMAT_SAME_CASE(R8G8B8A8, Srgb);
|
||||
@ -253,6 +254,8 @@ namespace skyline::gpu::interconnect {
|
||||
return format::D32Float;
|
||||
case MaxwellDepthRtFormat::S8D24Unorm:
|
||||
return format::S8D24Unorm;
|
||||
case MaxwellDepthRtFormat::D24S8Unorm:
|
||||
return format::D24S8Unorm;
|
||||
default:
|
||||
throw exception("Cannot translate the supplied depth RT format: 0x{:X}", static_cast<u32>(format));
|
||||
}
|
||||
|
@ -72,6 +72,11 @@ namespace skyline::gpu::format {
|
||||
FORMAT_INT_FLOAT(R32, 32, eR32);
|
||||
FORMAT_NORM_INT_FLOAT(R16G16, 32, eR16G16);
|
||||
FORMAT(B10G11R11Float, 32, eB10G11R11UfloatPack32);
|
||||
FORMAT(R11G11B10Float, 32, eB10G11R11UfloatPack32, .swizzle = {
|
||||
.red = swc::Blue,
|
||||
.green = swc::Green,
|
||||
.blue = swc::Red,
|
||||
});
|
||||
FORMAT_NORM_INT_SRGB(R8G8B8A8, 32, eR8G8B8A8);
|
||||
FORMAT_NORM_INT_SRGB(G8B8A8R8, 32, eB8G8R8A8, .swizzle = {
|
||||
.blue = swc::Alpha,
|
||||
@ -149,6 +154,9 @@ namespace skyline::gpu::format {
|
||||
FORMAT(S8D24Unorm, 32, eD24UnormS8Uint, .vkAspect = {
|
||||
vka::eStencil | vka::eDepth
|
||||
}); // TODO: Swizzle Depth/Stencil
|
||||
FORMAT(D24S8Unorm, 32, eD24UnormS8Uint, .vkAspect = {
|
||||
vka::eStencil | vka::eDepth
|
||||
});
|
||||
|
||||
#undef FORMAT
|
||||
#undef FORMAT_SUFF_UNORM_SRGB
|
||||
|
Loading…
Reference in New Issue
Block a user