Преглед изворни кода

Fixed slow camera movements. Inverted y axis

Thomas Buck пре 11 година
родитељ
комит
38915c5a7d
3 измењених фајлова са 10 додато и 5 уклоњено
  1. 1
    0
      ChangeLog
  2. 8
    4
      src/OpenRaider.cpp
  3. 1
    1
      src/SDLSystem.cpp

+ 1
- 0
ChangeLog Прегледај датотеку

@@ -6,6 +6,7 @@
6 6
  OpenRaider (0.1.2) xythobuz <xythobuz@xythobuz.de>
7 7
 
8 8
 	[ 20140101 ]
9
+	* Fixed incredibly slow mouse/camera movements
9 10
 	* Fixed mouse grabbing in fullscreen mode. Also make mouse
10 11
 	  invisible and grab it in windowed mode
11 12
 

+ 8
- 4
src/OpenRaider.cpp Прегледај датотеку

@@ -362,7 +362,8 @@ void OpenRaider::handleMouseMotionEvent(float x, float y)
362 362
 {
363 363
 	if (x > 0)
364 364
 	{
365
-		m_camera.command(CAMERA_ROTATE_RIGHT);
365
+        while (x-- > 0) // Tried to fix very slow camera movements
366
+            m_camera.command(CAMERA_ROTATE_RIGHT);
366 367
 
367 368
 		if (LARA)
368 369
 		{
@@ -382,7 +383,8 @@ void OpenRaider::handleMouseMotionEvent(float x, float y)
382 383
 	}
383 384
 	else if (x < 0)
384 385
 	{
385
-		m_camera.command(CAMERA_ROTATE_LEFT);
386
+        while (x++ < 0) // Tried to fix very slow camera movements
387
+            m_camera.command(CAMERA_ROTATE_LEFT);
386 388
 
387 389
 		if (LARA)
388 390
 		{
@@ -402,9 +404,11 @@ void OpenRaider::handleMouseMotionEvent(float x, float y)
402 404
 	}
403 405
 
404 406
 	if (y > 0)
405
-		m_camera.command(CAMERA_ROTATE_UP);
407
+        while (y-- > 0) // Tried to fix very slow camera movements
408
+            m_camera.command(CAMERA_ROTATE_UP);
406 409
 	else if (y < 0)
407
-		m_camera.command(CAMERA_ROTATE_DOWN);
410
+        while (y++ < 0) // Tried to fix very slow camera movements
411
+            m_camera.command(CAMERA_ROTATE_DOWN);
408 412
 
409 413
 	if (LARA)
410 414
 	{

+ 1
- 1
src/SDLSystem.cpp Прегледај датотеку

@@ -340,7 +340,7 @@ void SDLSystem::runGame()
340 340
 				break;
341 341
 			case SDL_MOUSEMOTION:
342 342
 				// Wrap motion
343
-				handleMouseMotionEvent(event.motion.xrel*2, event.motion.yrel*2);
343
+				handleMouseMotionEvent(event.motion.xrel/2, -event.motion.yrel/2);
344 344
 				break;
345 345
 			case SDL_MOUSEBUTTONDOWN:
346 346
 			case SDL_MOUSEBUTTONUP:

Loading…
Откажи
Сачувај