summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video_core/gpu.h1
-rw-r--r--src/video_core/morton.cpp2
-rw-r--r--src/video_core/renderer_opengl/gl_texture_cache.cpp1
-rw-r--r--src/video_core/renderer_vulkan/maxwell_to_vk.cpp1
-rw-r--r--src/video_core/renderer_vulkan/vk_device.cpp1
-rw-r--r--src/video_core/surface.cpp2
-rw-r--r--src/video_core/surface.h5
7 files changed, 13 insertions, 0 deletions
diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h
index a6f846f3c..b0a2ad21b 100644
--- a/src/video_core/gpu.h
+++ b/src/video_core/gpu.h
@@ -46,6 +46,7 @@ enum class RenderTargetFormat : u32 {
46 RGBA16_UINT = 0xC9, 46 RGBA16_UINT = 0xC9,
47 RGBA16_FLOAT = 0xCA, 47 RGBA16_FLOAT = 0xCA,
48 RG32_FLOAT = 0xCB, 48 RG32_FLOAT = 0xCB,
49 RG32_SINT = 0xCC,
49 RG32_UINT = 0xCD, 50 RG32_UINT = 0xCD,
50 RGBX16_FLOAT = 0xCE, 51 RGBX16_FLOAT = 0xCE,
51 BGRA8_UNORM = 0xCF, 52 BGRA8_UNORM = 0xCF,
diff --git a/src/video_core/morton.cpp b/src/video_core/morton.cpp
index 9e50aa11d..f932df53f 100644
--- a/src/video_core/morton.cpp
+++ b/src/video_core/morton.cpp
@@ -70,6 +70,7 @@ static constexpr ConversionArray morton_to_linear_fns = {
70 MortonCopy<true, PixelFormat::BGRA8>, 70 MortonCopy<true, PixelFormat::BGRA8>,
71 MortonCopy<true, PixelFormat::RGBA32F>, 71 MortonCopy<true, PixelFormat::RGBA32F>,
72 MortonCopy<true, PixelFormat::RG32F>, 72 MortonCopy<true, PixelFormat::RG32F>,
73 MortonCopy<true, PixelFormat::RG32I>,
73 MortonCopy<true, PixelFormat::R32F>, 74 MortonCopy<true, PixelFormat::R32F>,
74 MortonCopy<true, PixelFormat::R16F>, 75 MortonCopy<true, PixelFormat::R16F>,
75 MortonCopy<true, PixelFormat::R16U>, 76 MortonCopy<true, PixelFormat::R16U>,
@@ -157,6 +158,7 @@ static constexpr ConversionArray linear_to_morton_fns = {
157 MortonCopy<false, PixelFormat::BGRA8>, 158 MortonCopy<false, PixelFormat::BGRA8>,
158 MortonCopy<false, PixelFormat::RGBA32F>, 159 MortonCopy<false, PixelFormat::RGBA32F>,
159 MortonCopy<false, PixelFormat::RG32F>, 160 MortonCopy<false, PixelFormat::RG32F>,
161 MortonCopy<false, PixelFormat::RG32I>,
160 MortonCopy<false, PixelFormat::R32F>, 162 MortonCopy<false, PixelFormat::R32F>,
161 MortonCopy<false, PixelFormat::R16F>, 163 MortonCopy<false, PixelFormat::R16F>,
162 MortonCopy<false, PixelFormat::R16U>, 164 MortonCopy<false, PixelFormat::R16U>,
diff --git a/src/video_core/renderer_opengl/gl_texture_cache.cpp b/src/video_core/renderer_opengl/gl_texture_cache.cpp
index ef1729894..1d7824324 100644
--- a/src/video_core/renderer_opengl/gl_texture_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_texture_cache.cpp
@@ -70,6 +70,7 @@ constexpr std::array<FormatTuple, VideoCore::Surface::MaxPixelFormat> tex_format
70 {GL_RGBA8, GL_BGRA, GL_UNSIGNED_BYTE}, // BGRA8 70 {GL_RGBA8, GL_BGRA, GL_UNSIGNED_BYTE}, // BGRA8
71 {GL_RGBA32F, GL_RGBA, GL_FLOAT}, // RGBA32F 71 {GL_RGBA32F, GL_RGBA, GL_FLOAT}, // RGBA32F
72 {GL_RG32F, GL_RG, GL_FLOAT}, // RG32F 72 {GL_RG32F, GL_RG, GL_FLOAT}, // RG32F
73 {GL_RG32I, GL_RG_INTEGER, GL_INT}, // RG32I
73 {GL_R32F, GL_RED, GL_FLOAT}, // R32F 74 {GL_R32F, GL_RED, GL_FLOAT}, // R32F
74 {GL_R16F, GL_RED, GL_HALF_FLOAT}, // R16F 75 {GL_R16F, GL_RED, GL_HALF_FLOAT}, // R16F
75 {GL_R16, GL_RED, GL_UNSIGNED_SHORT}, // R16U 76 {GL_R16, GL_RED, GL_UNSIGNED_SHORT}, // R16U
diff --git a/src/video_core/renderer_vulkan/maxwell_to_vk.cpp b/src/video_core/renderer_vulkan/maxwell_to_vk.cpp
index 43264ce14..4086d1bb6 100644
--- a/src/video_core/renderer_vulkan/maxwell_to_vk.cpp
+++ b/src/video_core/renderer_vulkan/maxwell_to_vk.cpp
@@ -146,6 +146,7 @@ struct FormatTuple {
146 {VK_FORMAT_B8G8R8A8_UNORM, Attachable}, // BGRA8 146 {VK_FORMAT_B8G8R8A8_UNORM, Attachable}, // BGRA8
147 {VK_FORMAT_R32G32B32A32_SFLOAT, Attachable | Storage}, // RGBA32F 147 {VK_FORMAT_R32G32B32A32_SFLOAT, Attachable | Storage}, // RGBA32F
148 {VK_FORMAT_R32G32_SFLOAT, Attachable | Storage}, // RG32F 148 {VK_FORMAT_R32G32_SFLOAT, Attachable | Storage}, // RG32F
149 {VK_FORMAT_R32G32_SINT, Attachable | Storage}, // RG32I
149 {VK_FORMAT_R32_SFLOAT, Attachable | Storage}, // R32F 150 {VK_FORMAT_R32_SFLOAT, Attachable | Storage}, // R32F
150 {VK_FORMAT_R16_SFLOAT, Attachable | Storage}, // R16F 151 {VK_FORMAT_R16_SFLOAT, Attachable | Storage}, // R16F
151 {VK_FORMAT_R16_UNORM, Attachable | Storage}, // R16U 152 {VK_FORMAT_R16_UNORM, Attachable | Storage}, // R16U
diff --git a/src/video_core/renderer_vulkan/vk_device.cpp b/src/video_core/renderer_vulkan/vk_device.cpp
index 06c6169dc..e1128efe6 100644
--- a/src/video_core/renderer_vulkan/vk_device.cpp
+++ b/src/video_core/renderer_vulkan/vk_device.cpp
@@ -84,6 +84,7 @@ std::unordered_map<VkFormat, VkFormatProperties> GetFormatProperties(
84 VK_FORMAT_R32G32B32A32_SFLOAT, 84 VK_FORMAT_R32G32B32A32_SFLOAT,
85 VK_FORMAT_R32G32B32A32_UINT, 85 VK_FORMAT_R32G32B32A32_UINT,
86 VK_FORMAT_R32G32_SFLOAT, 86 VK_FORMAT_R32G32_SFLOAT,
87 VK_FORMAT_R32G32_SINT,
87 VK_FORMAT_R32G32_UINT, 88 VK_FORMAT_R32G32_UINT,
88 VK_FORMAT_R16G16B16A16_UINT, 89 VK_FORMAT_R16G16B16A16_UINT,
89 VK_FORMAT_R16G16B16A16_SNORM, 90 VK_FORMAT_R16G16B16A16_SNORM,
diff --git a/src/video_core/surface.cpp b/src/video_core/surface.cpp
index 1f12163fe..13e598972 100644
--- a/src/video_core/surface.cpp
+++ b/src/video_core/surface.cpp
@@ -106,6 +106,8 @@ PixelFormat PixelFormatFromRenderTargetFormat(Tegra::RenderTargetFormat format)
106 return PixelFormat::RGBA16F; 106 return PixelFormat::RGBA16F;
107 case Tegra::RenderTargetFormat::RG32_FLOAT: 107 case Tegra::RenderTargetFormat::RG32_FLOAT:
108 return PixelFormat::RG32F; 108 return PixelFormat::RG32F;
109 case Tegra::RenderTargetFormat::RG32_SINT:
110 return PixelFormat::RG32I;
109 case Tegra::RenderTargetFormat::RG32_UINT: 111 case Tegra::RenderTargetFormat::RG32_UINT:
110 return PixelFormat::RG32UI; 112 return PixelFormat::RG32UI;
111 case Tegra::RenderTargetFormat::RGBX16_FLOAT: 113 case Tegra::RenderTargetFormat::RGBX16_FLOAT:
diff --git a/src/video_core/surface.h b/src/video_core/surface.h
index 6999d9dc3..3e9dd797a 100644
--- a/src/video_core/surface.h
+++ b/src/video_core/surface.h
@@ -44,6 +44,7 @@ enum class PixelFormat {
44 BGRA8, 44 BGRA8,
45 RGBA32F, 45 RGBA32F,
46 RG32F, 46 RG32F,
47 RG32I,
47 R32F, 48 R32F,
48 R16F, 49 R16F,
49 R16U, 50 R16U,
@@ -162,6 +163,7 @@ constexpr std::array<u32, MaxPixelFormat> compression_factor_shift_table = {{
162 0, // BGRA8 163 0, // BGRA8
163 0, // RGBA32F 164 0, // RGBA32F
164 0, // RG32F 165 0, // RG32F
166 0, // RG32I
165 0, // R32F 167 0, // R32F
166 0, // R16F 168 0, // R16F
167 0, // R16U 169 0, // R16U
@@ -264,6 +266,7 @@ constexpr std::array<u32, MaxPixelFormat> block_width_table = {{
264 1, // BGRA8 266 1, // BGRA8
265 1, // RGBA32F 267 1, // RGBA32F
266 1, // RG32F 268 1, // RG32F
269 1, // RG32I
267 1, // R32F 270 1, // R32F
268 1, // R16F 271 1, // R16F
269 1, // R16U 272 1, // R16U
@@ -358,6 +361,7 @@ constexpr std::array<u32, MaxPixelFormat> block_height_table = {{
358 1, // BGRA8 361 1, // BGRA8
359 1, // RGBA32F 362 1, // RGBA32F
360 1, // RG32F 363 1, // RG32F
364 1, // RG32I
361 1, // R32F 365 1, // R32F
362 1, // R16F 366 1, // R16F
363 1, // R16U 367 1, // R16U
@@ -452,6 +456,7 @@ constexpr std::array<u32, MaxPixelFormat> bpp_table = {{
452 32, // BGRA8 456 32, // BGRA8
453 128, // RGBA32F 457 128, // RGBA32F
454 64, // RG32F 458 64, // RG32F
459 64, // RG32I
455 32, // R32F 460 32, // R32F
456 16, // R16F 461 16, // R16F
457 16, // R16U 462 16, // R16U