using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Move : MonoBehaviour {
public Transform[] po;
float tl = 0;
float a;
// Use this for initialization
void Start () {
//枪口LookAt(po[1].position)
}
// Update is called once per frame
void Update () {
tl += Time.deltaTime;
transform.position = BezierCurve(po[0].position, po[1].position,po[2].position, tl * 0.2f);
}
//三个点的曲线
public static Vector3 BezierCurve(Vector3 P0, Vector3 P1, Vector3 P2, float t)
{
Vector3 B = Vector3.zero;
float t1 = (1 - t) * (1 - t);
float t2 = t * (1 - t);
float t3 = t * t;
B = P0 * t1 + 2 * t2 * P1 + t3 * P2;
//B.y = P0.y*t1 + 2*t2*P1.y + t3*P2.y;
//B.z = P0.z*t1 + 2*t2*P1.z + t3*P2.z;
return B;
}
}
赛贝尔曲线运用————方块沿曲线运动
最新推荐文章于 2019-09-03 20:49:44 发布