fix
This commit is contained in:
parent
94cdd16394
commit
d827bb8197
15
level.cc
15
level.cc
@ -61,23 +61,28 @@ void Level::update(float runTimeSinceLastUpdate, float runTime, glm::vec2 mouseD
|
||||
// Ignore first two mouse updates, because they are incorrect
|
||||
// DON'T try to move this functionallity elsewhere
|
||||
static int i = 0;
|
||||
if (i <2) {
|
||||
if (i <20) {
|
||||
i++;
|
||||
mouseDelta.x=mouseDelta.y=0;
|
||||
}
|
||||
|
||||
int runs = 2;
|
||||
|
||||
if(i>=20)
|
||||
{
|
||||
mouseDelta.x = -mouseDelta.x;
|
||||
}
|
||||
|
||||
for(int j = runs; j > 0; j--)
|
||||
{
|
||||
physics.takeUpdateStep(runTimeSinceLastUpdate/runs);
|
||||
if(i>=2)
|
||||
{
|
||||
mouseDelta.x = -mouseDelta.x;
|
||||
|
||||
camera.updateRotation(mouseDelta/100.0f/(float)runs);
|
||||
physics.updateCameraPos(mouseDelta, 50/runs, camera.getDistance());
|
||||
|
||||
camera.setPosition(physics.getCameraPosition());
|
||||
camera.setDirection(physics.getCameraToPlayer());
|
||||
}
|
||||
|
||||
if(wPressed){
|
||||
physics.rollForward(camera.getVector(),strength/runs);
|
||||
}
|
||||
|
@ -416,7 +416,7 @@ void Physics::addSphere(float rad, Entity entity, float mass, float dampningL, f
|
||||
|
||||
void Physics::addCamera() //Camera Creator automatically called when player is created
|
||||
{
|
||||
btSphereShape* sphere = new btSphereShape(0.5f); //we use this to make a more interesting camera, that does not interpenetrate with the terrain/objects
|
||||
btSphereShape* sphere = new btSphereShape(0.2f); //we use this to make a more interesting camera, that does not interpenetrate with the terrain/objects
|
||||
|
||||
btVector3 inertia(0,0,0); //rotation handled elsewhere (as it always has to look at the player)
|
||||
|
||||
@ -481,7 +481,7 @@ void Physics::updateCameraPos(glm::vec2 mouseMovement, float strength, float dis
|
||||
this->cameraDistance = distance;
|
||||
//note: in mouseMovement x and y are flipped in contrast to bullet
|
||||
btVector3 dodo = btVector3(0,1,0).cross(btVector3(currentDirection.x(),0,currentDirection.z()));
|
||||
currentDirection = currentDirection.rotate(dodo,-mouseMovement.x / 100);//mathhelper 3.14159265359
|
||||
currentDirection = currentDirection.rotate(dodo,-mouseMovement.x / 50);//mathhelper 3.14159265359
|
||||
|
||||
btVector3 compare = currentDirection;
|
||||
compare.setY(0);
|
||||
|
Loading…
Reference in New Issue
Block a user