Added camera movement speed modifier keys.

This was SVN commit r12455.
This commit is contained in:
Jonathan Waller 2012-08-17 18:33:41 +00:00
parent 592478eb67
commit 37964d048e
2 changed files with 50 additions and 0 deletions

View File

@ -105,6 +105,7 @@ sound.bufferSize = 65536
; Camera control settings
view.scroll.speed = 120.0
view.scroll.speed.modifier = 1.05 ; Multiplier for changing scroll speed
view.rotate.x.speed = 1.2
view.rotate.x.min = 28.0
view.rotate.x.max = 60.0
@ -112,12 +113,14 @@ view.rotate.x.default = 35.0
view.rotate.y.speed = 2.0
view.rotate.y.speed.wheel = 0.45
view.rotate.y.default = 0.0
view.rotate.speed.modifier = 1.05 ; Multiplier for changing rotation speed
view.drag.speed = 0.5
view.zoom.speed = 256.0
view.zoom.speed.wheel = 32.0
view.zoom.min = 50.0
view.zoom.max = 200.0
view.zoom.default = 120.0
view.zoom.speed.modifier = 1.05 ; Multiplier for changing zoom speed
view.pos.smoothness = 0.1
view.zoom.smoothness = 0.4
view.rotate.x.smoothness = 0.5
@ -164,6 +167,12 @@ hotkey.camera.left = A, LeftArrow ; Scroll or rotate lef
hotkey.camera.right = D, RightArrow ; Scroll or rotate right
hotkey.camera.up = W, UpArrow ; Scroll or rotate up/forwards
hotkey.camera.down = S, DownArrow ; Scroll or rotate down/backwards
hotkey.camera.scroll.speed.increase = "Ctrl+Shift+S" ; Increase scroll speed
hotkey.camera.scroll.speed.decrease = "Ctrl+Alt+S" ; Decrease scroll speed
hotkey.camera.rotate.speed.increase = "Ctrl+Shift+R" ; Increase rotation speed
hotkey.camera.rotate.speed.decrease = "Ctrl+Alt+R" ; Decrease rotation speed
hotkey.camera.zoom.speed.increase = "Ctrl+Shift+Z" ; Increase zoom speed
hotkey.camera.zoom.speed.decrease = "Ctrl+Alt+Z" ; Decrease zoom speed
; > CONSOLE SETTINGS
hotkey.console.toggle = BackQuote, F9 ; Open/close console

View File

@ -168,6 +168,7 @@ public:
// Dummy values (these will be filled in by the config file)
ViewScrollSpeed(0),
ViewScrollSpeedModifier(1),
ViewRotateXSpeed(0),
ViewRotateXMin(0),
ViewRotateXMax(0),
@ -175,12 +176,14 @@ public:
ViewRotateYSpeed(0),
ViewRotateYSpeedWheel(0),
ViewRotateYDefault(0),
ViewRotateSpeedModifier(1),
ViewDragSpeed(0),
ViewZoomSpeed(0),
ViewZoomSpeedWheel(0),
ViewZoomMin(0),
ViewZoomMax(0),
ViewZoomDefault(0),
ViewZoomSpeedModifier(1),
ViewFOV(DEGTORAD(45.f)),
ViewNear(2.f),
ViewFar(4096.f),
@ -269,6 +272,7 @@ public:
////////////////////////////////////////
// Settings
float ViewScrollSpeed;
float ViewScrollSpeedModifier;
float ViewRotateXSpeed;
float ViewRotateXMin;
float ViewRotateXMax;
@ -276,12 +280,14 @@ public:
float ViewRotateYSpeed;
float ViewRotateYSpeedWheel;
float ViewRotateYDefault;
float ViewRotateSpeedModifier;
float ViewDragSpeed;
float ViewZoomSpeed;
float ViewZoomSpeedWheel;
float ViewZoomMin;
float ViewZoomMax;
float ViewZoomDefault;
float ViewZoomSpeedModifier;
float ViewFOV;
float ViewNear;
float ViewFar;
@ -409,6 +415,7 @@ void CGameViewImpl::ScriptingInit()
int CGameView::Initialize()
{
CFG_GET_SYS_VAL("view.scroll.speed", Float, m->ViewScrollSpeed);
CFG_GET_SYS_VAL("view.scroll.speed.modifier", Float, m->ViewScrollSpeedModifier);
CFG_GET_SYS_VAL("view.rotate.x.speed", Float, m->ViewRotateXSpeed);
CFG_GET_SYS_VAL("view.rotate.x.min", Float, m->ViewRotateXMin);
CFG_GET_SYS_VAL("view.rotate.x.max", Float, m->ViewRotateXMax);
@ -416,12 +423,14 @@ int CGameView::Initialize()
CFG_GET_SYS_VAL("view.rotate.y.speed", Float, m->ViewRotateYSpeed);
CFG_GET_SYS_VAL("view.rotate.y.speed.wheel", Float, m->ViewRotateYSpeedWheel);
CFG_GET_SYS_VAL("view.rotate.y.default", Float, m->ViewRotateYDefault);
CFG_GET_SYS_VAL("view.rotate.speed.modifier", Float, m->ViewRotateSpeedModifier);
CFG_GET_SYS_VAL("view.drag.speed", Float, m->ViewDragSpeed);
CFG_GET_SYS_VAL("view.zoom.speed", Float, m->ViewZoomSpeed);
CFG_GET_SYS_VAL("view.zoom.speed.wheel", Float, m->ViewZoomSpeedWheel);
CFG_GET_SYS_VAL("view.zoom.min", Float, m->ViewZoomMin);
CFG_GET_SYS_VAL("view.zoom.max", Float, m->ViewZoomMax);
CFG_GET_SYS_VAL("view.zoom.default", Float, m->ViewZoomDefault);
CFG_GET_SYS_VAL("view.zoom.speed.modifier", Float, m->ViewZoomSpeedModifier);
CFG_GET_SYS_VAL("joystick.camera.pan.x", Int, m->JoystickPanX);
CFG_GET_SYS_VAL("joystick.camera.pan.y", Int, m->JoystickPanY);
@ -1109,6 +1118,38 @@ InReaction CGameView::HandleEvent(const SDL_Event_* ev)
m->RotateY.AddSmoothly(-m->ViewRotateYSpeedWheel);
return IN_HANDLED;
}
else if (hotkey == "camera.scroll.speed.increase")
{
m->ViewScrollSpeed *= m->ViewScrollSpeedModifier;
return IN_HANDLED;
}
else if (hotkey == "camera.scroll.speed.decrease")
{
m->ViewScrollSpeed /= m->ViewScrollSpeedModifier;
return IN_HANDLED;
}
else if (hotkey == "camera.rotate.speed.increase")
{
m->ViewRotateXSpeed *= m->ViewRotateSpeedModifier;
m->ViewRotateYSpeed *= m->ViewRotateSpeedModifier;
return IN_HANDLED;
}
else if (hotkey == "camera.rotate.speed.decrease")
{
m->ViewRotateXSpeed /= m->ViewRotateSpeedModifier;
m->ViewRotateYSpeed /= m->ViewRotateSpeedModifier;
return IN_HANDLED;
}
else if (hotkey == "camera.zoom.speed.increase")
{
m->ViewZoomSpeed *= m->ViewZoomSpeedModifier;
return IN_HANDLED;
}
else if (hotkey == "camera.zoom.speed.decrease")
{
m->ViewZoomSpeed /= m->ViewZoomSpeedModifier;
return IN_HANDLED;
}
else if (hotkey == "camera.reset")
{
ResetCameraAngleZoom();