Implement B8G8R8A8{Unorm/Srgb} RT Format

Needed by Maxwell3D Register Initialization
This commit is contained in:
PixelyIon 2021-11-12 14:19:38 +05:30
parent 69e7d8b574
commit ea87b8878c
3 changed files with 8 additions and 2 deletions

View File

@ -101,6 +101,10 @@ namespace skyline::gpu::interconnect {
return format::R16G16B16A16Uint; return format::R16G16B16A16Uint;
case maxwell3d::RenderTarget::ColorFormat::R16G16B16A16Float: case maxwell3d::RenderTarget::ColorFormat::R16G16B16A16Float:
return format::R16G16B16A16Float; return format::R16G16B16A16Float;
case maxwell3d::RenderTarget::ColorFormat::B8G8R8A8Unorm:
return format::B8G8R8A8Unorm;
case maxwell3d::RenderTarget::ColorFormat::B8G8R8A8Srgb:
return format::B8G8R8A8Srgb;
case maxwell3d::RenderTarget::ColorFormat::A2B10G10R10Unorm: case maxwell3d::RenderTarget::ColorFormat::A2B10G10R10Unorm:
return format::A2B10G10R10Unorm; return format::A2B10G10R10Unorm;
case maxwell3d::RenderTarget::ColorFormat::R8G8B8A8Unorm: case maxwell3d::RenderTarget::ColorFormat::R8G8B8A8Unorm:

View File

@ -40,6 +40,6 @@ namespace skyline::gpu::format {
constexpr Format R16G16B16A16Sint{sizeof(u16) * 4, vkf::eR16G16B16A16Sint}; constexpr Format R16G16B16A16Sint{sizeof(u16) * 4, vkf::eR16G16B16A16Sint};
constexpr Format R16G16B16A16Uint{sizeof(u16) * 4, vkf::eR16G16B16A16Uint}; constexpr Format R16G16B16A16Uint{sizeof(u16) * 4, vkf::eR16G16B16A16Uint};
constexpr Format R16G16B16A16Float{sizeof(u16) * 4, vkf::eR16G16B16A16Sfloat}; constexpr Format R16G16B16A16Float{sizeof(u16) * 4, vkf::eR16G16B16A16Sfloat};
constexpr Format B8G8R8A8Unorm{sizeof(u32), vkf::eB8G8R8A8Unorm};
/** constexpr Format B8G8R8A8Srgb{sizeof(u32), vkf::eB8G8R8A8Srgb};
} }

View File

@ -58,6 +58,8 @@ namespace skyline::soc::gm20b::engine::maxwell3d::type {
R16G16B16A16Sint = 0xC8, R16G16B16A16Sint = 0xC8,
R16G16B16A16Uint = 0xC9, R16G16B16A16Uint = 0xC9,
R16G16B16A16Float = 0xCA, R16G16B16A16Float = 0xCA,
B8G8R8A8Unorm = 0xCF,
B8G8R8A8Srgb = 0xD0,
A2B10G10R10Unorm = 0xD1, A2B10G10R10Unorm = 0xD1,
R8G8B8A8Unorm = 0xD5, R8G8B8A8Unorm = 0xD5,
A8B8G8R8Srgb = 0xD6, A8B8G8R8Srgb = 0xD6,