// Use this for initialization void Start() { vertexIndexes = new List <int>(); meshVertices = new List <Vector3>(); faceTracing = GetComponent <SkinnedFaceTracing>(); smr = fbxGuy.GetComponent <SkinnedMeshRenderer>(); m = smr.sharedMesh; for (int i = 0; i < m.vertices.Length; i++) { meshVertices.Add(m.vertices[i]); } guiOptions = GetComponent <SkinnedGUIOptions>(); bakedAnimationController = GetComponent <BakedAnimationController>(); }
// WE Load A VERTEX GROUP void readFile(string fileName) { faceTracing.resetPreview(); faceTracing.clearTracking(); faceModeller.clearTracker(); print("LOAD TRACKING GROUP"); //List config files /* * string[] lines = System.IO.File.ReadAllLines(@"Assets\" + fileName);// dirty because Assets is inside Assets....<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< * * * SkinnedGUIOptions skinnedGUI = GetComponent<SkinnedGUIOptions>(); * * //WE LOAD GROUP ONLY IN EDIT MODE * if (skinnedGUI.returnModeValue() == 1) * { * * // Display the file contents by using a foreach loop. * foreach (string line in lines) * { * string[] values = line.Split(' '); * string input = values[0];// Index Value * int i; * bool result = int.TryParse(input, out i);//Check If Input is Parsable * * if (result) * { * //print(" ADD INDEX "+System.Int32.Parse(values[0])); * int index = int.Parse(values[0]); * int value = int.Parse(values[1]); * faceTracing.addTrackingPoint(index, value); * faceTracing.addPreviewPoint(index); * * } * * } * * } * * // faceTracing.MoveWithIndexes(); * // faceTracing.LinkToMesh(); * */ List <int> loadedIndexes = new List <int>(); List <int> loadedValues = new List <int>(); BakedAnimationController animationController = GetComponent <BakedAnimationController>(); // WE LOAD TRACKING POINTS , THEY ARE READY foreach (TrackingPoint tp in trackingPoints) { faceTracing.addTrackingPoint(tp.index, tp.value); loadedIndexes.Add(tp.index); loadedValues.Add(tp.value); } animationController.addTrackingGroupToAnimation(fileName, loadedIndexes.ToArray(), loadedValues.ToArray(), faceModeller.getRealTrackingCenter(loadedIndexes)); faceModeller.StartAnimation(); }