From f225990f6b4fb862f54b04361885ed36011419f5 Mon Sep 17 00:00:00 2001 From: Fredrick Johansson Date: Wed, 19 Aug 2020 21:19:22 +0200 Subject: [PATCH] JAMSPOOK-13 - Steering done! - Torque (steering) implemented! - Friction tweaked as well. --- src/entities/KartFactory.cpp | 2 +- src/entities/KartInteractionComponent.cpp | 8 ++++---- src/entities/KartPhysicsComponent.cpp | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/entities/KartFactory.cpp b/src/entities/KartFactory.cpp index 8d64228..4074f3a 100644 --- a/src/entities/KartFactory.cpp +++ b/src/entities/KartFactory.cpp @@ -63,7 +63,7 @@ shared_ptr KartFactory::createKart(const vec3 position, physicsComponent->getCollider()->getRigidBody()->setLinearFactor(btVector3(1,1,1)); // allow all positional movement movement physicsComponent->getCollider()->getRigidBody()->setAngularFactor(btVector3(1,1,1)); // allow all rotational movement movement physicsComponent->getCollider()->getRigidBody()->setRestitution(0.1f); - physicsComponent->getCollider()->getRigidBody()->setFriction(0.01f); +// physicsComponent->getCollider()->getRigidBody()->setFriction(0.1f); // physicsComponent->getCollider()->getRigidBody()->setGravity(btVector3(0, 0, 0)); // no gravity, length of zero physicsComponent->getCollider()->getRigidBody()->setActivationState(DISABLE_DEACTIVATION); // RigidBody may never sleep. (Note: Or else it will not respond to setLinearVelocity when standing still for too long(a couple of seconds).) diff --git a/src/entities/KartInteractionComponent.cpp b/src/entities/KartInteractionComponent.cpp index 415b78a..27d3ce7 100755 --- a/src/entities/KartInteractionComponent.cpp +++ b/src/entities/KartInteractionComponent.cpp @@ -29,20 +29,20 @@ void KartInteractionComponent::onInputDeviceStateChange(const InputDeviceState i // Handle controls if (inputDeviceState.left == ButtonState::pressed || inputDeviceState.left == ButtonState::held) { - accumulatedDirection += vec3(-1.0f, 0, 0); + accumulatedDirection += vec3(1.0f, 0, 0); } else if (inputDeviceState.left == ButtonState::released) { - accumulatedDirection -= vec3(-1.0f, 0, 0); + accumulatedDirection -= vec3(1.0f, 0, 0); } if (inputDeviceState.right == ButtonState::pressed || inputDeviceState.right == ButtonState::held) { - accumulatedDirection += vec3(1.0f, 0, 0); + accumulatedDirection += vec3(-1.0f, 0, 0); } else if (inputDeviceState.right == ButtonState::released) { - accumulatedDirection -= vec3(1.0f, 0, 0); + accumulatedDirection -= vec3(-1.0f, 0, 0); } if (inputDeviceState.up == ButtonState::pressed || inputDeviceState.up == ButtonState::held) diff --git a/src/entities/KartPhysicsComponent.cpp b/src/entities/KartPhysicsComponent.cpp index 0ec58c6..d649679 100644 --- a/src/entities/KartPhysicsComponent.cpp +++ b/src/entities/KartPhysicsComponent.cpp @@ -45,7 +45,7 @@ void KartPhysicsComponent::update(const milliseconds dtms) vec3(0, 0, 0)); // Turning torque - + mCollider->applyTorque(mat3(mTransform) * vec3(0, mDirection.x * 500, 0)); } }