public curveTo ( Vector3 pos, Vector3 cPos ) : void | ||
pos | Vector3 | |
cPos | Vector3 | |
return | void |
void Update() { // List<Vector3> pathPos = new List<Vector3>(); // for (int n = 0; n < animPath.keyframes.Length; n++){ // Vector3 pos = animPath.keyframes[n].position; // pathPos.Add(pos); // } // path = pathPos.ToArray(); if(path == null || path.Length < 1){ return; } Shape sp = new Shape(); sp.moveTo( path[0] ); for(int n = 1; n < path.Length-1; n++) { Vector3 pos = Vector3.Lerp( path[n], path[n+1], 0.5f); sp.curveTo( path[n], pos ); } Vector3 posC = Vector3.Lerp( path[path.Length-2], path[path.Length-1], 0.5f); Vector3 posEnd = path[path.Length-1]; sp.curveTo( posC, posEnd ); pathInfo = new PathInfo(sp.commands, sp.data); DrawLinePoints(); // Point3D _p3d = pathInfo.lengthToPoint(t_length); p3D = new Vector3(_p3d.x, _p3d.y, _p3d.z); }
void Update() { // List<Vector3> pathPos = new List<Vector3>(); // for (int n = 0; n < animPath.keyframes.Length; n++){ // Vector3 pos = animPath.keyframes[n].position; // pathPos.Add(pos); // } // path = pathPos.ToArray(); if (path == null || path.Length < 1) { return; } Shape sp = new Shape(); sp.moveTo(path[0]); for (int n = 1; n < path.Length - 1; n++) { Vector3 pos = Vector3.Lerp(path[n], path[n + 1], 0.5f); sp.curveTo(path[n], pos); } Vector3 posC = Vector3.Lerp(path[path.Length - 2], path[path.Length - 1], 0.5f); Vector3 posEnd = path[path.Length - 1]; sp.curveTo(posC, posEnd); pathInfo = new PathInfo(sp.commands, sp.data); DrawLinePoints(); // Point3D _p3d = pathInfo.lengthToPoint(t_length); p3D = new Vector3(_p3d.x, _p3d.y, _p3d.z); }