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 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						685499a0e0 
					 
					
						
						
							
							[client] egl: prefer gawk and mawk when building shaders  
						
						... 
						
						
						
						We'd rather use known versions of awk if possible for ease of troubleshooting. 
						
						
					 
					
						2021-08-10 06:17:38 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						705250f23d 
					 
					
						
						
							
							[client] egl: correct assign to gl_Position in basic.vert  
						
						... 
						
						
						
						gl_Position is expected to be using homogeneous coordinates, which requires
w to be a coordinate scale factor, usually 1.0. z should also be set in order
for depth to be well-defined. Therefore, we should set gl_Position.zw to
vec2(0.0, 1.0). 
						
						
					 
					
						2021-08-10 06:10:42 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						eb680086ef 
					 
					
						
						
							
							[client] egl: correctly use flexible array members for BindData  
						
						... 
						
						
						
						Array size of 0 is a gcc extension, the standard C is not declaring a size. 
						
						
					 
					
						2021-08-10 06:10:42 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						cc3494437a 
					 
					
						
						
							
							[client] egl: add ffx cas configuration options  
						
						
						
						
					 
					
						2021-08-10 01:10:08 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						37faccd014 
					 
					
						
						
							
							[client] egl: allow ffxCAS sharpness configuration  
						
						
						
						
					 
					
						2021-08-10 00:54:54 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						30e6a258ad 
					 
					
						
						
							
							[client] egl: cleanup pointer mess in egl_desktopInit  
						
						
						
						
					 
					
						2021-08-10 00:48:41 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d24bc75519 
					 
					
						
						
							
							[client] egl: added missing vertex shader file  
						
						
						
						
					 
					
						2021-08-09 23:14:01 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						92de467edc 
					 
					
						
						
							
							[client] egl: add ffx_cas post process filter  
						
						
						
						
					 
					
						2021-08-09 23:12:58 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9b1d03fcfe 
					 
					
						
						
							
							[client] egl: implement #include for shaders with awk  
						
						
						
						
					 
					
						2021-08-09 22:04:07 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						4eda01949d 
					 
					
						
						
							
							[client] egl: give pp filters the dimensions of all prior textures  
						
						
						
						
					 
					
						2021-08-09 22:02:07 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						062d18d5fa 
					 
					
						
						
							
							[client] egl: don't allocate the texture ringbuffer unless needed  
						
						
						
						
					 
					
						2021-08-09 18:28:52 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						04a54598b3 
					 
					
						
						
							
							[client] egl: set a default scale for textures without filters  
						
						
						
						
					 
					
						2021-08-09 18:27:10 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						79dcc6d4f1 
					 
					
						
						
							
							Revert "[client] egl: set a default scale for textures without filters"  
						
						... 
						
						
						
						This reverts commit 57a74c156b 
						
						
					 
					
						2021-08-09 18:26:30 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						57a74c156b 
					 
					
						
						
							
							[client] egl: set a default scale for textures without filters  
						
						
						
						
					 
					
						2021-08-09 18:24:33 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6882e5c59f 
					 
					
						
						
							
							[client] egl: provide the texture scale to the desktop shader  
						
						... 
						
						
						
						If the texture has a post-processing filter that has scaled the texture,
the desktop fragment shader needs to know this if it's doing linear
scaling. 
						
						
					 
					
						2021-08-09 18:22:28 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f7f8060447 
					 
					
						
						
							
							[client] egl: allow setting an output scale for a post-process shader  
						
						
						
						
					 
					
						2021-08-09 17:57:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						53461d7515 
					 
					
						
						
							
							[client] egl: simplify desktop vertex shader  
						
						... 
						
						
						
						In GLSL, using the / operator on two vectors of the same size divides the
vector component-wise, i.e. vec2(a, b) / vec2(c, d) == vec2(a / c, b / d). 
						
						
					 
					
						2021-08-09 17:51:13 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9b87f4ba5e 
					 
					
						
						
							
							[client] egl: cycle through multiple textures for dmabuf  
						
						... 
						
						
						
						This avoids race conditions in GL drivers when attempting to render and
call glEGLImageTargetTexture2DOES on the same texture.
Also, when using glEGLImageTargetTexture2DOES, we do not need to allocate
storage for textures. 
						
						
					 
					
						2021-08-09 17:12:11 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f50ef4c23c 
					 
					
						
						
							
							[client] egl: remove includes from testing  
						
						
						
						
					 
					
						2021-08-09 14:13:03 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						86d6b67337 
					 
					
						
						
							
							[client] egl: rework egl to accomodate post-processing filtering  
						
						
						
						
					 
					
						2021-08-09 14:08:10 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						91d1b8d2cd 
					 
					
						
						
							
							[client] egl: refactor egl_texture_free to use project naming standards  
						
						
						
						
					 
					
						2021-08-08 17:52:13 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						baf9661530 
					 
					
						
						
							
							[client] egl: remove texture->ops indirection  
						
						
						
						
					 
					
						2021-08-08 17:31:52 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						266ad27998 
					 
					
						
						
							
							[client] egl: refactor to use project naming standard  
						
						
						
						
					 
					
						2021-08-08 17:16:10 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						30ed563504 
					 
					
						
						
							
							[client] interface: refactor to use camlCase function names  
						
						
						
						
					 
					
						2021-08-08 15:43:42 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d347b28481 
					 
					
						
						
							
							[client] egl: implement free for texture frambuffer  
						
						
						
						
					 
					
						2021-08-08 15:35:13 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f8ae291090 
					 
					
						
						
							
							[client] interface: switch to using UPCAST for the renderer's data  
						
						
						
						
					 
					
						2021-08-08 15:32:01 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						45d1f27fb4 
					 
					
						
						
							
							[client] interface: rename LG_Renderer to LG_RendererOps  
						
						... 
						
						
						
						Part of the standardisation of using the `Ops` suffix for all interfaces 
						
						
					 
					
						2021-08-08 14:43:04 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						b822e255d8 
					 
					
						
						
							
							[client] egl: attempt DMABUF import and fallback if it fails  
						
						... 
						
						
						
						This should deal with drivers not supporting our DMABUF without attempting
to identify the drivers and blacklist them. 
						
						
					 
					
						2021-08-08 09:53:47 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						037b76750a 
					 
					
						
						
							
							[client] egl: revert glsync changes  
						
						... 
						
						
						
						`process` and `bind` are called from the same thread in order, there is
no need for atomic usage here.
This reverts commit 3d7dbd6371b3db1ba10b 
						
						
					 
					
						2021-08-08 09:44:59 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e949f2f8d2 
					 
					
						
						
							
							[client] egl: texture_framebuffer should call the stream init  
						
						
						
						
					 
					
						2021-08-08 09:43:28 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						88c91d4752 
					 
					
						
						
							
							[egl] texture: use more appropriate vairable names (parent & this)  
						
						
						
						
					 
					
						2021-08-08 09:35:56 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3d7dbd6371 
					 
					
						
						
							
							[client] egl: sync is now an atomic, access it as such  
						
						
						
						
					 
					
						2021-08-08 09:26:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						b3db1ba10b 
					 
					
						
						
							
							[client] egl: eliminate GLsync object leaks  
						
						... 
						
						
						
						It used to be the case that we overwrite this->sync even if it was non-zero
when updating the texture, without deleting the sync object. If we update
faster than we render, the result would be leaking sync objects.
This commit ensures that sync objects are deleted when they are replaced. 
						
						
					 
					
						2021-08-08 09:19:04 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						12d256c7c8 
					 
					
						
						
							
							[client] egl: do a full redraw if nightvision is toggled  
						
						
						
						
					 
					
						2021-08-08 08:42:08 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						3e32e01c30 
					 
					
						
						
							
							[client] egl/imgui: use imgui for night vision gain configuration  
						
						
						
						
					 
					
						2021-08-08 08:42:01 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ac3677d9ae 
					 
					
						
						
							
							[client] egl: implement partial copies for framebuffer textures  
						
						... 
						
						
						
						This uses the same line sweep algorithm originally created to copy DXGI
textures to IVSHMEM to implement the copy from IVSHMEM to memory-mapped
pixel buffer objects. 
						
						
					 
					
						2021-08-08 08:30:11 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e755f0befa 
					 
					
						
						
							
							[client] egl: correct letterbox area clear attempt  #3  - sigh  
						
						
						
						
					 
					
						2021-08-07 04:00:18 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						9f6ad864ed 
					 
					
						
						
							
							[client] egl: correct letterbox area clear attempt  #2  :)  
						
						
						
						
					 
					
						2021-08-07 03:44:47 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e5a138d854 
					 
					
						
						
							
							[client] egl: properly clear the letterbox areas  
						
						
						
						
					 
					
						2021-08-07 03:28:52 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						162b1b93db 
					 
					
						
						
							
							[client] main: don't include the swap into the render timings  
						
						... 
						
						
						
						If vsync is enabled the swap will block until vblank skewing the timing
metrics. 
						
						
					 
					
						2021-08-07 01:45:42 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						5d3c00717a 
					 
					
						
						
							
							[client] egl/imgui: use imgui for scaling algorithm selection  
						
						
						
						
					 
					
						2021-08-06 22:49:49 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						dc7fd74327 
					 
					
						
						
							
							[client] egl: refactor config dialog into main egl module  
						
						... 
						
						
						
						This will allow other things like scaling to be implemented. 
						
						
					 
					
						2021-08-06 22:49:49 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						65e550a61c 
					 
					
						
						
							
							[client] egl: pad buffer damage by 1px when rendering desktop  
						
						... 
						
						
						
						We want to add extra padding to deal with scaling, which may end up blending
with neighbouring pixels. 
						
						
					 
					
						2021-08-05 08:05:30 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6c44bbb53e 
					 
					
						
						
							
							[client] egl: use a ui switch for damage display instead of a keybind  
						
						
						
						
					 
					
						2021-08-05 00:56:31 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						51b9cd4e5a 
					 
					
						
						
							
							[all] copyright: use unicode copyright sign ©  
						
						... 
						
						
						
						This is done for consistency with the license strings in appstrings.c. 
						
						
					 
					
						2021-08-04 21:16:35 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f7682c289a 
					 
					
						
						
							
							[client] egl: always render the black bar areas  
						
						... 
						
						
						
						Failure to render these causes artifacts/ghosting when the overlays are
using this area, as such we need to always render this area of the
screen. 
						
						
					 
					
						2021-08-03 22:29:04 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						4b4a75475a 
					 
					
						
						
							
							[client] egl: fix out by one error with letterbox rendering  
						
						... 
						
						
						
						This replaces the scaled `destRect` with a version that uses doubles
correcting the rounding error that is causing a failure to properly
clear the black bar areas. 
						
						
					 
					
						2021-08-03 22:27:46 +10:00