From 470be03c2ff22346a1f0ae53fa25f53c4d1790b5 Mon Sep 17 00:00:00 2001 From: riperiperi Date: Mon, 26 Dec 2022 18:50:27 +0000 Subject: GPU: Add fallback when 16-bit formats are not supported (#4108) * Add conversion for 16 bit RGBA formats (not supported in Rosetta) * Rebase fix Rebase fix * Forgot to remove this * Fix RGBA16 format conversion * Add RGBA4 -> RGBA8 conversion * Handle host stride alignment * Address Feedback Part 1 * Can't count * Don't zero out rgb when alpha is 0 * Separate RGBA4 and 5-bit component formats Not sure of a better way to name them... * Add A1B5G5R5 conversion * Put this in the right place. * Make format naming consistent for capabilities * Change method names --- Ryujinx.Graphics.OpenGL/OpenGLRenderer.cs | 2 ++ 1 file changed, 2 insertions(+) (limited to 'Ryujinx.Graphics.OpenGL/OpenGLRenderer.cs') diff --git a/Ryujinx.Graphics.OpenGL/OpenGLRenderer.cs b/Ryujinx.Graphics.OpenGL/OpenGLRenderer.cs index 59ca6afd..de1ce4a3 100644 --- a/Ryujinx.Graphics.OpenGL/OpenGLRenderer.cs +++ b/Ryujinx.Graphics.OpenGL/OpenGLRenderer.cs @@ -114,7 +114,9 @@ namespace Ryujinx.Graphics.OpenGL supports3DTextureCompression: false, supportsBgraFormat: false, supportsR4G4Format: false, + supportsR4G4B4A4Format: true, supportsSnormBufferTextureFormat: false, + supports5BitComponentFormat: true, supportsFragmentShaderInterlock: HwCapabilities.SupportsFragmentShaderInterlock, supportsFragmentShaderOrderingIntel: HwCapabilities.SupportsFragmentShaderOrdering, supportsGeometryShaderPassthrough: HwCapabilities.SupportsGeometryShaderPassthrough, -- cgit v1.2.3