void Awake() { Actor = GetComponent <Actor>(); NN = GetComponent <PFNN>(); TargetDirection = new Vector3(transform.forward.x, 0f, transform.forward.z); TargetVelocity = Vector3.zero; Positions = new Vector3[Actor.Bones.Length]; Forwards = new Vector3[Actor.Bones.Length]; Ups = new Vector3[Actor.Bones.Length]; Velocities = new Vector3[Actor.Bones.Length]; Trajectory = new Trajectory(111, Controller.Styles.Length, transform.position, TargetDirection); Trajectory.Postprocess(); if (Controller.Styles.Length > 0) { for (int i = 0; i < Trajectory.Points.Length; i++) { Trajectory.Points[i].Styles[0] = 1f; } } for (int i = 0; i < Actor.Bones.Length; i++) { Positions[i] = Actor.Bones[i].Transform.position; Forwards[i] = Actor.Bones[i].Transform.forward; Ups[i] = Actor.Bones[i].Transform.up; Velocities[i] = Vector3.zero; } if (NN.Parameters == null) { Debug.Log("No parameters saved."); return; } NN.LoadParameters(); }
void Reset() { Root = transform; Controller = new Controller(); Character = new Character(); Character.BuildHierarchy(transform); PFNN = new PFNN(); }
void Awake() { Actor = GetComponent <Actor>(); NN = GetComponent <PFNN>(); TargetDirection = new Vector3(transform.forward.x, 0f, transform.forward.z); TargetVelocity = Vector3.zero; Positions = new Vector3[Actor.Bones.Length]; Forwards = new Vector3[Actor.Bones.Length]; Ups = new Vector3[Actor.Bones.Length]; Velocities = new Vector3[Actor.Bones.Length]; Rotations = new Quaternion[Actor.Bones.Length]; RotationsFrom = new Vector3[Actor.Bones.Length]; //Actor Skeleton = GameObject.Find("Skeleton").GetComponent<Actor>(); //Diff = new Vector3[Actor.Bones.Length]; Trajectory = new Trajectory(111, Controller.GetNames(), transform.position, TargetDirection); Trajectory.Postprocess(); if (Controller.Styles.Length > 0) { for (int i = 0; i < Trajectory.Points.Length; i++) { Trajectory.Points[i].Styles[0] = 1f; } } for (int i = 0; i < Actor.Bones.Length; i++) { Positions[i] = Actor.Bones[i].Transform.position; Forwards[i] = Actor.Bones[i].Transform.forward; Ups[i] = Actor.Bones[i].Transform.up; Velocities[i] = Vector3.zero; Rotations[i] = Quaternion.identity; if (i >= 1) { RotationsFrom[i - 1] = Actor.Bones[i].Transform.position - Actor.Bones[i - 1].Transform.position; } //Diff[i] = Skeleton.Bones[i].Transform.localPosition - Actor.Bones[i].Transform.localPosition; } if (NN.Parameters == null) { Debug.Log("No parameters saved."); return; } NN.LoadParameters(); }
void Awake() { Target = (PFNN)target; }