Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						a7180a5609 
					 
					
						
						
							
							[client] another try at better screen sync  
						
						
						
						
					 
					
						2017-12-14 06:54:53 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						81f4a7fade 
					 
					
						
						
							
							[client] slow down mouse updates to something reasonable  
						
						
						
						
					 
					
						2017-12-14 04:18:30 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						7986350cb8 
					 
					
						
						
							
							[client] switch to polling mode to fix stutting issues  
						
						
						
						
					 
					
						2017-12-14 02:24:18 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						afff50dfde 
					 
					
						
						
							
							[client] don't try to realign the mouse until we know where the mouse is  
						
						
						
						
					 
					
						2017-12-13 22:05:47 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						233b7755ae 
					 
					
						
						
							
							[client] moved host startup sync before window creation  
						
						
						
						
					 
					
						2017-12-13 21:57:01 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3bc2506d92 
					 
					
						
						
							
							[client] added clean client restart mechanisim  
						
						
						
						
					 
					
						2017-12-13 21:08:35 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						371f7ce535 
					 
					
						
						
							
							[client] cosmetics  
						
						
						
						
					 
					
						2017-12-13 20:44:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						a6b253197f 
					 
					
						
						
							
							[client/opengl] removed extra calls to make the context current  
						
						
						
						
					 
					
						2017-12-13 14:26:31 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b5cb796b7c 
					 
					
						
						
							
							[client] changed opengl to process every frame  
						
						
						
						
					 
					
						2017-12-13 14:10:24 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d0e5bd02bd 
					 
					
						
						
							
							[client] use lists to draw the cursor  
						
						
						
						
					 
					
						2017-12-13 13:10:32 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						85c83d2417 
					 
					
						
						
							
							[client] enable vsync again but draw to front for cursor updates  
						
						
						
						
					 
					
						2017-12-13 05:55:01 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e7511b30bb 
					 
					
						
						
							
							[client] kick the guest before waiting for updates  
						
						
						
						
					 
					
						2017-12-13 05:28:53 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d2957228ef 
					 
					
						
						
							
							[client] added monochrome cursor support  
						
						
						
						
					 
					
						2017-12-13 04:49:43 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b5a5d4cda2 
					 
					
						
						
							
							[common/client] add pitch to cursor shape structure  
						
						
						
						
					 
					
						2017-12-13 04:42:09 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						c36e948bdb 
					 
					
						
						
							
							[client] added RGB cursor support  
						
						
						
						
					 
					
						2017-12-13 03:51:25 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						a950f7b187 
					 
					
						
						
							
							[client] added initial code for rendering the cursor shape  
						
						
						
						
					 
					
						2017-12-13 03:08:38 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5cfae05cae 
					 
					
						
						
							
							[client] corrected screen resize bug and incorrect scissor  
						
						
						
						
					 
					
						2017-12-13 02:28:41 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						893bb7e603 
					 
					
						
						
							
							[client] huge rewrite of renderer API deal with mouse updates  
						
						
						
						
					 
					
						2017-12-13 02:22:47 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						301d394f50 
					 
					
						
						
							
							[client] updates for new protocol and vsync disable method  
						
						
						
						
					 
					
						2017-12-12 08:08:14 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						219179b375 
					 
					
						
						
							
							[misc] added website url to sources  
						
						
						
						
					 
					
						2017-12-12 04:30:47 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						9f790ff51d 
					 
					
						
						
							
							[client] corrected polling logic  
						
						... 
						
						
						
						Calculating the pollDelay for the next frame is impossible as the
frame rate is determined by the host application's capture API and
may wildly vary. 
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ce278d17a7 
					 
					
						
						
							
							[client] print out video card information  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3d462928a6 
					 
					
						
						
							
							[client] added git version to build  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5863160c69 
					 
					
						
						
							
							[client] fixed incorrect usage of glXWaitVideoSyncSGI  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						7574e03d86 
					 
					
						
						
							
							[client] fixed out by one error on frame sleep sync  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						38d458ac7d 
					 
					
						
						
							
							[client] added dependency on X11  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e2c1f1cd77 
					 
					
						
						
							
							[client] set the compositor bypass hint  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						8adf7cbacd 
					 
					
						
						
							
							[client] remove debug print  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						0ad1f21ffb 
					 
					
						
						
							
							[client] renderer interface improvements and use gl lists for opengl  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						fcfea1b65d 
					 
					
						
						
							
							[client] fixed basic renderer  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e6a21d1049 
					 
					
						
						
							
							[client] implemented SGI_video_sync for better frame sync  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						31c9693cbf 
					 
					
						
						
							
							[client] move remaining opengl code into the opengl renderer  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5e9885bec1 
					 
					
						
						
							
							[client] apply fps limiter when presentation time is too low  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						786b9ec723 
					 
					
						
						
							
							[client] altered makefile to link fontconfig  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						421b091448 
					 
					
						
						
							
							[client] Added fontconfig for font path detection  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						a4d8fd2237 
					 
					
						
						
							
							[client] added rate limiting to failed kicks (guest not ready)  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3899556cbf 
					 
					
						
						
							
							[client] added extra sanity checks to the header's data format  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						81f1b43581 
					 
					
						
						
							
							[client] makefile, enable -O3 as the default now  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						79dffa047f 
					 
					
						
						
							
							[client] dont mipmap when enlarging smaller screens  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						0ccb38940e 
					 
					
						
						
							
							[client] make autoResize work again  
						
						
						
						
					 
					
						2017-12-12 03:59:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						59a894ae04 
					 
					
						
						
							
							[client] switched srcRect to srcSize and type to SDL_Point  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						34f07ec77f 
					 
					
						
						
							
							[client] minor logical order optimization of the render loop  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						1d5f98db32 
					 
					
						
						
							
							[client] adjusted presentation time to be more accurate  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						032602f336 
					 
					
						
						
							
							[client] reworked the polling logic yet again  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						eb52ee9412 
					 
					
						
						
							
							[client] added retard/resync counts for debugging  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d09bb1146d 
					 
					
						
						
							
							[client] removed unused useBufferStorage app state variable  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ea5d0ddfe0 
					 
					
						
						
							
							[client] removed deprecated option to disable GL_ARB_buffer_storage  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						852309464f 
					 
					
						
						
							
							[client] more polling improvements  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						32c6989654 
					 
					
						
						
							
							[client] removed debugging print  
						
						
						
						
					 
					
						2017-12-12 03:59:57 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						7349334811 
					 
					
						
						
							
							[client] reworked polling logic and added GPU magic  
						
						... 
						
						
						
						SDL_RenderPresent calls SwapBuffers which doesn't block even with vsync
enabled until the driver/gpu has buffered several frames, this is no good
for our use case where low latency is of ultimate importance. This patch
measures the swap interval, ensures the time is consumed and then calls
glFinish to ensure that there is no buffered data. The results on NVidia
hardware are exceptional, but will need verification on AMD hardware.
Polling logic has also been improved, the client will hunt for the best
delay rather then resorting to waiting on an event from the guest, avoiding
scheduler latency caused by waiting on the irq event. 
						
						
					 
					
						2017-12-12 03:59:57 +11:00