- Home /
help with tunnel Game
Ok Im a highschooler and I am working on a game in unity where a sphere moves down and around a tube controlled by you to avoid obstacles. I am trying to make it so that the ball can move forward at a designated speed but you can control how the ball moves sideways. I thought about using waypoints for this but the ball is acting very jerky. Also the tube twists and turns. Ive been stuck on this for a while all possible answers are welcomed. Thanks ahead of time. Here is my waypoint script try to take a look at it for me I couldnt find any mistakes but If there is a better or smoother way of doing this please help me.
var currentWP: int = 0;
//the array of waypoints in order of visiting
//can be made up of any game objects
var waypoints: GameObject[];
var speed: int = 5;
var rotationSpeed: int = 2;
//how close to get to the waypoint to consider having reached it
var accuracy: Number = 5;
function Update ()
{
if(waypoints.length == 0) return;
if(Vector3.Distance(waypoints[currentWP].transform.position, transform.position) < accuracy)
{
currentWP++;
if(currentWP >= waypoints.length)
{
currentWP = 0;
}
}
//rotate towards target
var direction = waypoints[currentWP].transform.position - transform.position;
transform.rotation = Quaternion.Slerp(transform.rotation,Quaternion.LookRotation(direction), rotationSpeed * Time.deltaTime);
transform.Translate(0, 0, Time.deltaTime * speed);
}
Answer by paulygons · Nov 13, 2013 at 05:04 AM
I might try hand animating it using Unity's Animation View, since it is a predefined type of travel: http://docs.unity3d.com/Documentation/Manual/AnimationView43.html
Also, you might dig this, particularly the top link "navigation meshes" http://docs.unity3d.com/Documentation/Manual/NavmeshandPathfinding.html I have not yet used Unity's built in navigation tools, but it might be a cool place to start. It also might be way more than you want to chew on.