* Change win32 client Sys_Sleep so it ONLY sleeps since before it was waking on
more or less any input event; fine for the server, not so much use for the client * In the main loop, don't bother sleeping if it's going to be less than 10ms as the methods we're using to sleep at the moment aren't very precise * Add Sys_PlatformInit for platform specific initialisation * In win32 Sys_PlatformInit force selection of the DirectX SDL backend in order to get better fullscreen mouse input (in conjunction with a patched SDL DLL http://bugzilla.libsdl.org/show_bug.cgi?id=265)
This commit is contained in:
parent
d13269c5bb
commit
00e790ce00
5 changed files with 47 additions and 2 deletions
|
@ -2864,7 +2864,14 @@ void Com_Frame( void ) {
|
|||
|
||||
msec = minMsec;
|
||||
do {
|
||||
Sys_Sleep( minMsec - msec );
|
||||
int timeRemaining = minMsec - msec;
|
||||
|
||||
// The existing Sys_Sleep implementations aren't really
|
||||
// precise enough to be of use beyond 100fps
|
||||
// FIXME: implement a more precise sleep (RDTSC or something)
|
||||
if( timeRemaining >= 10 )
|
||||
Sys_Sleep( timeRemaining );
|
||||
|
||||
com_frameTime = Com_EventLoop();
|
||||
if ( lastTime > com_frameTime ) {
|
||||
lastTime = com_frameTime; // possible on first frame
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue