- Home /
F-Zero Game - Collisions/Physics.
Hello World, :D I have been working on a sci fi racing game similar to F-Zero and I have been wondering about something. I have a script that gives the basic steering controls (Accelerate Forward, rotate left and right) but I have been struggling with the physics and collisions. Whenever I turn the speed right up on my player, it flies straight through any oncoming objects, how can I fix this?. Secondly, I need to make my player stay "upright" at all times (so that you don't flip over when turning etc.) and whenever i put a rigidbody onto the player, the ship stutters whenever the player accelerates (ends up flipping over). Finally, how could I make my ship hover a tiny bit?
So, if anyone is willing to help me fix this problem I would be EXTREMELY thankful as this is my major work for my last year of school :)
Here's my control script:
//really basic, stupid code i came up with
var speed : float = 10.0;
var rotationSpeed : float = 100.0;
function Update () {
var translation : float = Input.GetAxis ("Vertical") * speed;
var rotation : float = Input.GetAxis ("Horizontal") * rotationSpeed;
translation *= Time.deltaTime;
rotation *= Time.deltaTime;
transform.Translate (0, 0, translation);
transform.Rotate (0, rotation, 0);
}
What I'm aiming for:
https://www.youtube.com/watch?v=RZ1KWVeHP0o
(without the antigrav setup)
Two options I can think of, one would be to constraint the physics object so it can't rotate around some axes.
The other would be to use a character controller ins$$anonymous$$d.
The problem of physics objects going through walls is known as 'tunnelling'.
Answer by trololo · Mar 25, 2014 at 11:07 AM
You should use the rigidbody functions and variables (AddForce(), velocity) instead of the Translate() and Rotate() functions. It would prevent your ship to go through the scene objects (check the colliders don't have the isTrigger flag active too) and even maybe it'll solve your "flip over" issue.
Your answer
Follow this Question
Related Questions
How to make camera position relative to a specific target. 1 Answer
Does setting the rotation of an object override the physics engine? 1 Answer
How should I control a 'rake' that pushes objects around a table? 2 Answers
Is there any way to apply drag to a 3d rigidbody in only 1 direction? 2 Answers
Flying Rigidbody moves forward, but doesn't turn in mid-flight? 1 Answer