Quantum 
							
						 
					 
					
						
						
							
						
						99761b195f 
					 
					
						
						
							
							[client] egl: switch postprocessing filters to use vectors  
						
						... 
						
						
						
						This will allow them to be reordered much more easily. 
						
						
					 
					
						2021-08-22 21:36:13 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9aa0d3ddab 
					 
					
						
						
							
							[client] egl: fix context creation on EGL 1.4  
						
						... 
						
						
						
						EGL_CONTEXT_OPENGL_DEBUG is only defined in EGL 1.5, and therefore, we should
not be passing it on older versions of EGL. 
						
						
					 
					
						2021-08-19 21:28:56 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						429620c48b 
					 
					
						
						
							
							[client] egl: dynamically import glBufferStorageEXT  
						
						... 
						
						
						
						On some implementations (e.g. llvmpipe), the function can only be queried via
eglGetProcAddress. 
						
						
					 
					
						2021-08-19 21:28:45 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						bb91b41c64 
					 
					
						
						
							
							[client] egl: look at 3x3 around the pixel instead of 4x4  
						
						... 
						
						
						
						Using 4x4 means that some pixels will be outside of the lanczos window. The
ideal lanczos function should in fact be zero in those areas, so we shouldn't
waste time processing those pixels.
I can't notice any difference in the results. 
						
						
					 
					
						2021-08-19 15:52:44 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						520460669c 
					 
					
						
						
							
							[client] egl: set gl_Position.z in cursor vertex shader  
						
						
						
						
					 
					
						2021-08-19 12:24:55 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						81c38e825c 
					 
					
						
						
							
							[client] remove all casts around malloc  
						
						... 
						
						
						
						The cast is unnecessary in C and should be removed to avoid clutter. 
						
						
					 
					
						2021-08-16 16:26:58 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						fd4a4114e6 
					 
					
						
						
							
							[client] egl: pad areas of the desktop repainted to cover overlays  
						
						... 
						
						
						
						We pad the screen coordinates and then convert to desktop coordinates,
so that the padding will always be a pixel wide on screen. 
						
						
					 
					
						2021-08-16 16:26:18 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						104141eec1 
					 
					
						
						
							
							[client] use correct argument order for calloc  
						
						
						
						
					 
					
						2021-08-16 16:25:59 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						b7d3bbbd82 
					 
					
						
						
							
							[client] egl: use standard-compliant way of EGL detection  
						
						... 
						
						
						
						According to the documentation for eglQueryString:
> EGL_BAD_DISPLAY is generated if display is not an EGL display connection,
> unless display is EGL_NO_DISPLAY and name is EGL_EXTENSIONS.
Therefore, we should check EGL by doing:
    eglQueryString(EGL_NO_DISPLAY, EGL_EXTENSIONS)
Indeed, the old way of eglQueryString(EGL_NO_DISPLAY, EGL_VERSION) works on
libglvnd but not using mesa's libEGL.so directly.
Also added a warning to make it more obvious that EGL is not available. 
						
						
					 
					
						2021-08-16 16:25:48 +10:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						14ad83c6b8 
					 
					
						
						
							
							[client] use variable-relative sizeof where possible  
						
						
						
						
					 
					
						2021-08-16 16:22:55 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						8f5afe1848 
					 
					
						
						
							
							[client] egl: clamp sharpness settings in filters  
						
						... 
						
						
						
						While the slider does not allow you to get out of range by dragging,
the user could still type in out of range values, so we clamp the values. 
						
						
					 
					
						2021-08-15 18:01:03 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						36073586e7 
					 
					
						
						
							
							[client] egl: add tooltip about Ctrl+Click on sharpness sliders  
						
						... 
						
						
						
						With the new keymap feature, we are now able to properly support letting
the user enter exact values into the sliders. This commit adds a tooltip
to help the user discover this feature.
Note that this currently only works on Wayland. The X11 backend will need
to call app_handleKeyboardModifiers. 
						
						
					 
					
						2021-08-15 18:01:03 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						bbd173000f 
					 
					
						
						
							
							[client] egl: clamp downscale factor range  
						
						
						
						
					 
					
						2021-08-14 14:57:33 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						96738ab9d0 
					 
					
						
						
							
							[client] egl: make downscale filter use text input widget  
						
						... 
						
						
						
						The major/minor pixel size hack is too confusing. This commit replaces
that with a text input and a slider. 
						
						
					 
					
						2021-08-14 14:44:26 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						5f3bd778c0 
					 
					
						
						
							
							[client] egl: add debug prints for renderStartup errors  
						
						
						
						
					 
					
						2021-08-14 12:20:12 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						f66486b0c7 
					 
					
						
						
							
							[client] egl/downscale: implement filter switching  
						
						
						
						
					 
					
						2021-08-14 12:19:50 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						2c02e6c4a0 
					 
					
						
						
							
							[client] egl: add linear downscale filter shader  
						
						
						
						
					 
					
						2021-08-14 12:19:50 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						94de061587 
					 
					
						
						
							
							[client] egl: implement lanczos filter shader  
						
						
						
						
					 
					
						2021-08-14 12:19:50 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						16adbab5d4 
					 
					
						
						
							
							[client] all: remove needless initalization  
						
						
						
						
					 
					
						2021-08-14 12:19:07 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						579f998519 
					 
					
						
						
							
							[client] all: replace assert with DEBUG_ASSERT  
						
						
						
						
					 
					
						2021-08-14 12:19:07 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						85a96d1e06 
					 
					
						
						
							
							[client] all: use DEBUG_UNREACHABLE instead of assert  
						
						... 
						
						
						
						Due to the way assert is defined in standard C, compilers in release mode
will not treat it as unreachable. This explains a lot about those pesky
uninitialized variable bugs, actually. 
						
						
					 
					
						2021-08-14 12:19:07 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						8c18817e2d 
					 
					
						
						
							
							[client] egl: don't generate mipmaps in downscale filter  
						
						... 
						
						
						
						When using DMABUF, the mipmaps can cause driver hangs and crashes. 
						
						
					 
					
						2021-08-12 17:03:18 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						117e88c240 
					 
					
						
						
							
							[client] egl: add new downscale filter  
						
						
						
						
					 
					
						2021-08-12 15:54:16 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6387bf2d2e 
					 
					
						
						
							
							[client] rework the configuration overlay to allow for tabs  
						
						
						
						
					 
					
						2021-08-12 09:04:45 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						fe6339fc77 
					 
					
						
						
							
							[client] egl: re-order CAS to before FSR for better results  
						
						
						
						
					 
					
						2021-08-12 06:56:16 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						3f8c7c8d0d 
					 
					
						
						
							
							[client] egl: fix buffer overflow in desktop_rects module  
						
						... 
						
						
						
						The module has been changed to support variable amount of rectangles,
so we should just allocate a VLA. 
						
						
					 
					
						2021-08-11 21:23:13 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						543c97987b 
					 
					
						
						
							
							[client] egl: remove needless precision quantifiers  
						
						... 
						
						
						
						We simply use precision mediump float; for everything. We don't actually
need highp anyways, and we don't use it for stuff like CAS or FSR. 
						
						
					 
					
						2021-08-11 20:47:46 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						06da52acfc 
					 
					
						
						
							
							[client] egl/fsr: release consts when no longer needed  
						
						
						
						
					 
					
						2021-08-11 20:47:03 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5a2f34d71c 
					 
					
						
						
							
							[client] egl/cas: release consts when no longer needed  
						
						
						
						
					 
					
						2021-08-11 20:42:56 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						8b2db071d8 
					 
					
						
						
							
							[client] egl: precompute CAS filter constants on CPU  
						
						
						
						
					 
					
						2021-08-11 20:38:42 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						3a1a9121eb 
					 
					
						
						
							
							[client] egl: make FSR filter show inactive in config when disabled  
						
						
						
						
					 
					
						2021-08-11 20:17:17 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						f80b67bc50 
					 
					
						
						
							
							[client] egl: precompute FSR filter constants on CPU  
						
						
						
						
					 
					
						2021-08-11 20:16:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						fe823b6172 
					 
					
						
						
							
							[client] egl: display FSR equivalent quality mode  
						
						... 
						
						
						
						This also displays a tooltip to explain that quality can be changed by
altering guest resolution and also show the resolutions needed to achieve
each quality mode. 
						
						
					 
					
						2021-08-11 20:05:27 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						c4c60fd330 
					 
					
						
						
							
							[client] egl: update FSR filter state upon resolution change  
						
						
						
						
					 
					
						2021-08-11 20:05:27 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5a5b867c73 
					 
					
						
						
							
							Revert "[client] egl: make FSR detect an input size change and activate if valid"  
						
						... 
						
						
						
						This reverts commit 73f125dcc7 
						
						
					 
					
						2021-08-11 20:05:07 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						73f125dcc7 
					 
					
						
						
							
							[client] egl: make FSR detect an input size change and activate if valid  
						
						
						
						
					 
					
						2021-08-11 20:02:29 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						7e982a6658 
					 
					
						
						
							
							[client] util: replace util_mergeOverlappingRects with common version  
						
						
						
						
					 
					
						2021-08-11 19:01:52 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f0ea882165 
					 
					
						
						
							
							[client] egl: cleanup texture filtering/post-processing  
						
						
						
						
					 
					
						2021-08-11 18:53:36 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f78154d282 
					 
					
						
						
							
							[client] egl: fixes to shader post-process pipeline  
						
						
						
						
					 
					
						2021-08-11 06:31:01 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						cd5ecf3e5a 
					 
					
						
						
							
							[client] egl: don't erase damage when invalidating whole window  
						
						
						
						
					 
					
						2021-08-11 02:43:08 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						a850a1b51b 
					 
					
						
						
							
							[client] egl: implement C wrappers for FidelityFX constant computation  
						
						
						
						
					 
					
						2021-08-11 02:42:55 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						c1a362f8d3 
					 
					
						
						
							
							[client] egl: handle \r character when processing #includes  
						
						
						
						
					 
					
						2021-08-11 02:41:54 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						127d3acd96 
					 
					
						
						
							
							[client] egl: use a texel based version of textureGather for FSR  
						
						
						
						
					 
					
						2021-08-10 14:21:46 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ccee347740 
					 
					
						
						
							
							[client] egl: don't define FSR_RCAS_F in ffx_fsr1_rcas.frag  
						
						
						
						
					 
					
						2021-08-10 13:57:23 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						c3a143732c 
					 
					
						
						
							
							[client] egl: cosmetics  
						
						
						
						
					 
					
						2021-08-10 13:46:48 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						dc0b3a8d45 
					 
					
						
						
							
							[client] egl: rework post process filters and add AMD FXR  
						
						
						
						
					 
					
						2021-08-10 13:46:48 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						3b751a2017 
					 
					
						
						
							
							[client] egl: perform full copy for framebuffer textures after resize  
						
						... 
						
						
						
						This prevents the code from using damage rectangles that are no longer on the
screen, causing an out-of-bounds write. 
						
						
					 
					
						2021-08-10 13:42:25 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						230ce81eb8 
					 
					
						
						
							
							[client] egl: allocate space for the initial texture dimensions  
						
						... 
						
						
						
						This fixes a buffer overrun when writing to the dimensions array 
						
						
					 
					
						2021-08-10 09:41:56 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e707f9d933 
					 
					
						
						
							
							[client] egl: enable ffxCAS if disabled and the sharpness is changed  
						
						
						
						
					 
					
						2021-08-10 07:56:24 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						64ed383128 
					 
					
						
						
							
							[client] egl: re-process the texture and invalidate if a setting changed  
						
						
						
						
					 
					
						2021-08-10 07:51:23 +10:00