Bootstrap

unity中让指定物体按规定线路进行移动

有许多人在初学unity时都会遇到一个问题–如何让一个指定的物体按照规定好的路线进行运动

首先创建5个空物体命名为point,作为移动路径的路径点
再创建一个Cube作为运动的物体 如图

在这里插入图片描述
代码如下:

using UnityEngine;
using System.Collections;
using System;

public class Move : MonoBehaviour {
	//通过添加[Serializable]特性确保当前类可以被实例化。
    [Serializable]
    //创建一个类获取移动的路径点,移动时间,等待时间
    public class Path {
        public Transform Poitn;//路径点
        public float MoveTime;//移动时间
        public float WaitTime;//等待时间
        public Vector3 Speed;//移动速度
    }
    
    public Path[] path = new Path[0];
    private int Id;
    public Transform target;

	void Start () {
        //让移动的物体的位置更变为第一个点的位置
        target.position = path[0].Poitn.position;
        //计算出每两个点之间的速度-speed
        for (int i = 1;i<path.Length;i++) {
            path[i].Speed = (path[i].Poitn.position - path[i - 1].Poitn
;