Browse Source

attempt to fix list add

Kenkart 2 years ago
parent
commit
8f5cd15197

+ 5 - 5
Assets/Scripts/JointsData.cs

@@ -9,13 +9,13 @@ public class JointsData
     public List<float> jointsPositionsY = new List<float>();
     public List<float> jointsPositionsZ = new List<float>();
 
-    public JointsData(Transform[] jointsData)
+    public JointsData(Vector3[] jointsData)
     {
-        foreach(Transform t in jointsData)
+        foreach(Vector3 t in jointsData)
         {
-            jointsPositionsX.Add(t.position.x);
-            jointsPositionsY.Add(t.position.y);
-            jointsPositionsZ.Add(t.position.z);
+            jointsPositionsX.Add(t.x);
+            jointsPositionsY.Add(t.y);
+            jointsPositionsZ.Add(t.z);
         }
     }
 }

+ 3 - 3
Assets/Scripts/JointsDataSequence.cs

@@ -7,11 +7,11 @@ public class JointsDataSequence
 {
     public List<JointsData> jointsDataSequence = new List<JointsData>();
 
-    public JointsDataSequence(List<Transform[]> jointsSequence)
+    public JointsDataSequence(List<Vector3[]> jointsSequence)
     {
-        foreach(Transform[] tArray in jointsSequence)
+        foreach(Vector3[] vectors in jointsSequence)
         {
-            JointsData jointsData = new JointsData(tArray);
+            JointsData jointsData = new JointsData(vectors);
             jointsDataSequence.Add(jointsData);
         }
     }

+ 6 - 4
Assets/Scripts/PlayerReplay.cs

@@ -7,7 +7,7 @@ public class PlayerReplay : MonoBehaviour
 {
     // Joints already given the values from BodySourceView.cs that keeps updating
     public Transform[] joints = new Transform[25];
-    public List<Transform[]> jointsSequence = new List<Transform[]>();
+    public List<Vector3[]> jointsSequence = new List<Vector3[]>();
     public Material boneMaterial;
 
     private Dictionary<Kinect.JointType, Kinect.JointType> _BoneMap = new Dictionary<Kinect.JointType, Kinect.JointType>()
@@ -45,12 +45,14 @@ public class PlayerReplay : MonoBehaviour
     public void AddJoints()
     {
         // TODO: still not working, all elements are replaced with new added array
-        jointsSequence.Add(joints);
+        Vector3[] positions = new Vector3[25];
 
-        foreach(Transform[] t in jointsSequence)
+        for(int i = 0; i < joints.Length; i++)
         {
-            Debug.Log("debug: " + t[0].position);
+            positions[i] = joints[i].position;
         }
+
+        jointsSequence.Add(positions);
     }
 
     public void Save()

+ 1 - 1
Assets/Scripts/SaveSystem.cs

@@ -8,7 +8,7 @@ public static class SaveSystem
 {
     private static string path = Application.persistentDataPath + "/joints.sav";
 
-    public static void Save(List<Transform[]> jointsSequence)
+    public static void Save(List<Vector3[]> jointsSequence)
     {
         BinaryFormatter formatter = new BinaryFormatter();
         FileStream stream = new FileStream(path, FileMode.Create);