|
From: <axl...@us...> - 2009-06-01 01:02:25
|
Revision: 300
http://hgengine.svn.sourceforge.net/hgengine/?rev=300&view=rev
Author: axlecrusher
Date: 2009-06-01 00:17:40 +0000 (Mon, 01 Jun 2009)
Log Message:
-----------
side step
Modified Paths:
--------------
Mercury2/src/Camera.cpp
Modified: Mercury2/src/Camera.cpp
===================================================================
--- Mercury2/src/Camera.cpp 2009-05-31 22:46:35 UTC (rev 299)
+++ Mercury2/src/Camera.cpp 2009-06-01 00:17:40 UTC (rev 300)
@@ -8,6 +8,7 @@
CameraNode::CameraNode()
:TransformNode(), m_x(0), m_y(0)
{
+ m_lookAt = MercuryVector(0,0,-1);
REGISTER_FOR_MESSAGE( INPUTEVENT_MOUSE );
}
@@ -64,11 +65,19 @@
{
MercuryVector p = GetPosition();
float a = 0;
+ float b = 0;
- if ( KeyboardInput::IsKeyDown(25) ) a += dTime*2;
- if ( KeyboardInput::IsKeyDown(39) ) a -= dTime*2;
+ if ( KeyboardInput::IsKeyDown(25) ) a += dTime*2; //W
+ if ( KeyboardInput::IsKeyDown(39) ) a -= dTime*2; //S
+ if ( KeyboardInput::IsKeyDown(38) ) b -= dTime*2; //A
+ if ( KeyboardInput::IsKeyDown(40) ) b += dTime*2; //D
+
+ MercuryVector Xaxis = m_lookAt.CrossProduct( MercuryVector(0,1,0) );
+ Xaxis.NormalizeSelf();
+
p += m_lookAt * a;
+ p += Xaxis * b;
// p.SetY(0); //lock to ground
SetPosition( p );
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|