Beispiel #1
0
    void CreatePathLinear()
    {
        if (cinemachinePath == null || points.Count < 1)
        {
            return;
        }

        cinemachinePath.m_Waypoints = null;
        cinemachinePath.m_Looped    = looped;

        List <CinemachinePath.Waypoint> waypoints = new List <CinemachinePath.Waypoint>();
        Vector3 basePt;

        for (int i = 0; i < points.Count; i++)
        {
            basePt = points[i].position;
            CinemachinePath.Waypoint prePt = new CinemachinePath.Waypoint();
            prePt.position = cinemachinePath.transform.InverseTransformPoint(basePt);
            prePt.tangent  = Vector3.zero;
            waypoints.Add(prePt);
        }

        cinemachinePath.m_Waypoints = waypoints.ToArray();
        cinemachinePath.InvalidateDistanceCache();
    }