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);
}
error CS0103: The name `EventSystem' does not exist in the current context.
– aaronfranke