void MoveToTarget() { if (RecreateOwnMathematics.Distance(new RecreateCoordinates(this.transform.position), new RecreateCoordinates(fuelManager.transform.position)) > stoppingDistance) { transform.position += direction * speed * Time.deltaTime; } }
void TranslateMovement() { float translation = Input.GetAxis("Vertical") * speed; float rotation = Input.GetAxis("Horizontal") * rotationSpeed; translation *= Time.deltaTime; rotation *= Time.deltaTime; transform.position = RecreateOwnMathematics.Translate(new RecreateCoordinates(transform.position), new RecreateCoordinates(transform.up), new RecreateCoordinates(0, translation, 0)).ConvertToVector(); transform.up = RecreateOwnMathematics.Rotate(new RecreateCoordinates(this.transform.up), rotation * 180.0f / Mathf.PI, true).ConvertToVector(); }
void MoveSphere() { float translation = Input.GetAxis("Vertical") * Speed; float horizontal = Input.GetAxis("Horizontal") * Speed; translation *= Time.deltaTime; horizontal *= Time.deltaTime; //transform.Translate(new Vector3(0,0,translation)); this.transform.position = RecreateOwnMathematics.MatrixTranslate(new RecreateCoordinates(this.transform.position, 1), new RecreateCoordinates(horizontal, 0, translation, 1)).ConvertToVector(); //transform.position = RecreateOwnMathematics.Translate(new RecreateCoordinates(transform.position),new RecreateCoordinates(transform.forward),new RecreateCoordinates(0,0,translation)).ConvertToVector(); }
void Movement() { float translation = Input.GetAxis("Vertical") * speed; float rotation = Input.GetAxis("Horizontal") * rotationSpeed; translation *= Time.deltaTime; rotation *= Time.deltaTime; //transform.Translate(new Vector3(0, translation, 0)); //transform.Rotate(new Vector3(0,0,-rotation)); transform.position = RecreateOwnMathematics.Translate(new RecreateCoordinates(transform.position), new RecreateCoordinates(transform.up), new RecreateCoordinates(0, translation, 0)).ConvertToVector(); //My Own Movement drived my own mathematics normal,dot product, angle , rotate and cross product transform.up = RecreateOwnMathematics.Rotate(new RecreateCoordinates(transform.up), rotation * Mathf.PI / 180, true).ConvertToVector(); }
void MoveArrayPoints() { foreach (GameObject p in points) { RecreateCoordinates position = new RecreateCoordinates(p.transform.position, 1); //p.transform.position = RecreateOwnMathematics.MatrixTranslate(position,new RecreateCoordinates(translation.x,translation.y,translation.z,0)).ConvertToVector(); position = RecreateOwnMathematics.MatrixTranslate(position, new RecreateCoordinates(new Vector3(-c.x, -c.y, -c.z), 0)); //p.transform.position = RecreateOwnMathematics.MatrixScale(position,scaling.x,scaling.y,scaling.z).ConvertToVector(); position = RecreateOwnMathematics.MatrixScale(position, scaling.x, scaling.y, scaling.z); p.transform.position = RecreateOwnMathematics.MatrixTranslate(position, new RecreateCoordinates(c.x, c.y, c.z, 0)).ConvertToVector(); } }
void RotateArrayPoints() { angle = angle * Mathf.Deg2Rad; foreach (GameObject p in points) { RecreateCoordinates position = new RecreateCoordinates(p.transform.position, 1); position = RecreateOwnMathematics.MatrixTranslate(position, new RecreateCoordinates(new Vector3(-c.x, -c.y, -c.z), 0)); //p.transform.position = RecreateOwnMathematics.MatrixRotate(position,angle.x,true,angle.y,true,angle.z,true).ConvertToVector(); position = RecreateOwnMathematics.MatrixRotate(position, angle.x, true, angle.y, true, angle.z, true); p.transform.position = RecreateOwnMathematics.MatrixTranslate(position, new RecreateCoordinates(c.x, c.y, c.z, 0)).ConvertToVector(); } }
//Craete my own translate static public RecreateCoordinates Translate(RecreateCoordinates position, RecreateCoordinates facing, RecreateCoordinates vector) { if (RecreateOwnMathematics.Distance(new RecreateCoordinates(0, 0, 0), vector) <= 0) { return(position); } float angle = RecreateOwnMathematics.Angle(vector, facing); float worldAngle = RecreateOwnMathematics.Angle(vector, new RecreateCoordinates(0, 1, 0)); bool clockwise = false; if (RecreateOwnMathematics.CrossProduct(vector, facing).z < 0) { clockwise = true; } vector = RecreateOwnMathematics.Rotate(vector, angle + worldAngle, clockwise); float xValue = position.x + vector.x; float yValue = position.y + vector.y; float zValue = position.z + vector.z; return(new RecreateCoordinates(xValue, yValue, zValue)); }
// Update is called once per frame void Update() { //this.transform.position = line.GetPointAt(t).ConvertToVector(); //this.transform.position = line.Lerp(Time.time * t).ConvertToVector(); this.transform.position = RecreateOwnMathematics.Lerp(new RecreateCoordinates(start.position), new RecreateCoordinates(end.position), Time.time * t).ConvertToVector(); }
void Movement(float time) { //this.transform.position = line.GetPointAt(time).ConvertToVector(); this.transform.position = RecreateOwnMathematics.Lerp(new RecreateCoordinates(start.position), new RecreateCoordinates(end.position), time).ConvertToVector(); }