Commit graph

168 commits

Author SHA1 Message Date
Geoffrey McRae
b6c8136565 [client] initialize the local header copy for proper startup 2017-12-15 12:02:37 +11:00
Geoffrey McRae
8ae9f8464b [client] updated client to support new KVMFR cursor dataPos field 2017-12-15 10:51:40 +11:00
Geoffrey McRae
3c61814c56 [client] windows cursors are in BGRA format 2017-12-15 10:20:20 +11:00
Geoffrey McRae
cd54cb179b [client] make gcc happy about the ignored read result
Fixes #5
2017-12-15 00:57:49 +11:00
Geoffrey McRae
67bdf2ba97
[client] fix SDL_ttf.h include path. 2017-12-14 22:05:32 +11:00
Geoffrey McRae
ead48195db [client] opengl: use the stride rather then rect width for padded widths 2017-12-14 20:35:36 +11:00
Geoffrey McRae
2ae9b479f6 [client] update window dimensions when the spice client is disabled 2017-12-14 20:09:48 +11:00
Geoffrey McRae
3fa9f371b4 [client] added license to opengl.c 2017-12-14 20:06:48 +11:00
Geoffrey McRae
8ec4abc544 [client] adjusted renderer interface to allow for APIs such as Vulkan 2017-12-14 17:42:59 +11:00
Geoffrey McRae
7b64d35cd1 [client] corrected path to SDL2_ttf header 2017-12-14 16:09:39 +11:00
Geoffrey McRae
8c2709a3f4 Revert "[client] disable hacky vsync code now we are single buffering"
This reverts commit d55f0bf841.
2017-12-14 10:40:51 +11:00
Geoffrey McRae
d55f0bf841 [client] disable hacky vsync code now we are single buffering 2017-12-14 10:35:38 +11:00
Geoffrey McRae
dd0930d265 [client] our source is vairable frame rate, we can't double buffer at all 2017-12-14 10:30:55 +11:00
Geoffrey McRae
04f7800df4 [client] remove silly wait logic 2017-12-14 10:12:31 +11:00
Geoffrey McRae
d8a80a1cfc [client] move startup later as DXGI stalls when nothing is going on 2017-12-14 10:08:47 +11:00
Geoffrey McRae
9d29b1195d [client] treat buffers correctly 2017-12-14 10:06:22 +11:00
Geoffrey McRae
2374b1a9fb [client] make methods static inline 2017-12-14 08:23:58 +11:00
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