public override void Init(Transform hand, Vector3 fingerBendAxis, Vector3 forearmAxis, bool bodySideLeft, int fingerIndex) { if (transform != null) { curlAxis = fingerBendAxis; if (bodySideLeft) { swingAxis = -Vector3.Cross(fingerBendAxis, forearmAxis); } else { swingAxis = Vector3.Cross(fingerBendAxis, forearmAxis); } if (phalanx0 == null || phalanx0.transform == null) { phalanx0 = new Phalanx(transform); } if ((phalanx1 == null || phalanx1.transform == null) && phalanx0.transform.childCount == 1) { phalanx1 = new Phalanx(phalanx0.transform.GetChild(0).transform); } if ((phalanx2 == null || phalanx2.transform == null) && phalanx1.transform.childCount == 1) { phalanx2 = new Phalanx(phalanx1.transform.GetChild(0).transform); } } }
public override void Init(GameObject hand, Vector3 fingerAxis, Vector3 armAxis, bool bodySideLeft, int fingerIndex) { if (transform != null) { this.fingerIndex = fingerIndex; this.axis1 = fingerAxis; this.axis2 = Vector3.Cross(fingerAxis, armAxis); phalanges = new Phalanx[3]; phalanges[0] = new Phalanx(transform); if (phalanges[0].transform.childCount == 1) { phalanges[1] = new Phalanx(phalanges[0].transform.GetChild(0).transform); if (phalanges[1].transform.childCount == 1) { phalanges[2] = new Phalanx(phalanges[1].transform.GetChild(0).transform); nPhalanges = 3; } else { phalanges[2] = null; nPhalanges = 2; } } else { phalanges[1] = null; nPhalanges = 1; } } }
public override void Init(Transform hand, Vector3 fingerAxis, Vector3 armAxis, bool bodySideLeft, int fingerIndex) { if (transform != null) { this.fingerIndex = fingerIndex; curlAxis = fingerAxis; swingAxis = Vector3.Cross(fingerAxis, armAxis); if (bodySideLeft) { swingAxis = -swingAxis; } if (phalanges == null || phalanges.Length == 0) { phalanges = new Phalanx[3]; } if (phalanges[0] == null || phalanges[0].transform == null) { phalanges[0] = new Phalanx(transform); nPhalanges = 1; } if ((phalanges[1] == null || phalanges[1].transform == null) && phalanges[0].transform.childCount == 1) { phalanges[1] = new Phalanx(phalanges[0].transform.GetChild(0).transform); nPhalanges = 2; } if ((phalanges[2] == null || phalanges[2].transform == null) && phalanges[1].transform.childCount == 1) { phalanges[2] = new Phalanx(phalanges[1].transform.GetChild(0).transform); nPhalanges = 3; } } }