mirror of
https://github.com/KytyPS5/KytyPS5.git
synced 2026-08-19 06:52:36 +00:00
renderer: support R8 uint render targets
This commit is contained in:
@@ -22,6 +22,10 @@ struct RenderTargetFormatMapping {
|
||||
};
|
||||
|
||||
constexpr RenderTargetFormatMapping kRenderTargetFormats[] = {
|
||||
{Prospero::ChannelLayout::k8,
|
||||
Prospero::ChannelType::kUInt,
|
||||
Prospero::ChannelOrder::kStandard,
|
||||
{vk::Format::eR8Uint, 1}},
|
||||
{Prospero::ChannelLayout::k8_8,
|
||||
Prospero::ChannelType::kUNorm,
|
||||
Prospero::ChannelOrder::kStandard,
|
||||
|
||||
@@ -15520,6 +15520,15 @@ void CheckEmbeddedFetchVertexOffset() {
|
||||
|
||||
#if KYTY_PLATFORM == KYTY_PLATFORM_WINDOWS
|
||||
void CheckRenderTargetFormatContract() {
|
||||
const auto r8_uint =
|
||||
TextureGetRenderTargetFormat(Prospero::GpuEnumValue(Prospero::ChannelLayout::k8),
|
||||
Prospero::GpuEnumValue(Prospero::ChannelType::kUInt),
|
||||
Prospero::GpuEnumValue(Prospero::ChannelOrder::kStandard));
|
||||
Require("RenderTargetFormat", "R8 uint",
|
||||
r8_uint.format == vk::Format::eR8Uint && r8_uint.bytes_per_element == 1u &&
|
||||
r8_uint.export_mapping.IsIdentity(),
|
||||
"R8 uint render-target tuple was rejected");
|
||||
|
||||
const auto rgb565 = TextureGetRenderTargetFormat(16u, 0u, 0u);
|
||||
Require("RenderTargetFormat", "RGB565 UNorm",
|
||||
rgb565.format == vk::Format::eB5G6R5UnormPack16 && rgb565.bytes_per_element == 2u &&
|
||||
|
||||
Reference in New Issue
Block a user