void Start() { myLib = new MyLib (); openNI = GameObject.FindGameObjectWithTag ("OpenNI").GetComponent (typeof(OpenNI2)) as OpenNI2; depthGenerator = openNI.depth; // Find all triggers GameObject triggers = GameObject.FindGameObjectWithTag("Triggers") as GameObject; boxTriggers = new Transform[triggers.transform.GetChildCount()]; audioSources = new AudioSource[triggers.transform.GetChildCount()]; triggerCells = new TriggerCell[triggers.transform.GetChildCount()]; int i = 0; foreach (Transform t in triggers.transform) { boxTriggers[i] = t; audioSources[i] = t.GetComponent (typeof(AudioSource)) as AudioSource; triggerCells[i] = t.GetComponent (typeof(TriggerCell)) as TriggerCell; i++; } }
void Update() { bool doUpdate = true; context.WaitNoneUpdateAll (); // Draw the RGB data to a texture MyLib myLib = new MyLib (); IntPtr imageP = this.imageGenerator.GetImageMapPtr (); int texId = texture.GetNativeTextureID (); bool result = myLib.CamTexture (texId, 640, 480, imageP); Debug.Log ("Texture ID: " + texId + " Result: " + result); uint[] users = userGenerator.GetUsers (); foreach (uint user in users) { if (skeletonCapability.IsTracking (user)) { doUpdate = false; Debug.Log ("Here we go!"); if (drawSkeleton) { LineRenderer lineRenderer = center.GetComponent (typeof(LineRenderer)) as LineRenderer; int i = 0; lineRenderer.SetVertexCount (3); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.Head)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.Neck)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.Torso)); //lineRenderer.SetPosition(i++, getJointVector3(user, SkeletonJoint.Waist)); lineRenderer = leftArm.GetComponent (typeof(LineRenderer)) as LineRenderer; i = 0; lineRenderer.SetVertexCount (3); //lineRenderer.SetPosition(i++, getJointVector3(user, SkeletonJoint.LeftCollar)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.LeftShoulder)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.LeftElbow)); //lineRenderer.SetPosition(i++, getJointVector3(user, SkeletonJoint.LeftWrist)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.LeftHand)); lineRenderer = rightArm.GetComponent (typeof(LineRenderer)) as LineRenderer; i = 0; lineRenderer.SetVertexCount (3); //lineRenderer.SetPosition(i++, getJointVector3(user, SkeletonJoint.RightCollar)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.RightShoulder)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.RightElbow)); //lineRenderer.SetPosition(i++, getJointVector3(user, SkeletonJoint.RightWrist)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.RightHand)); lineRenderer = leftLeg.GetComponent (typeof(LineRenderer)) as LineRenderer; i = 0; lineRenderer.SetVertexCount (3); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.LeftHip)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.LeftKnee)); //lineRenderer.SetPosition(i++, getJointVector3(user, SkeletonJoint.LeftAnkle)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.LeftFoot)); lineRenderer = rightLeg.GetComponent (typeof(LineRenderer)) as LineRenderer; i = 0; lineRenderer.SetVertexCount (3); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.RightHip)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.RightKnee)); //lineRenderer.SetPosition(i++, getJointVector3(user, SkeletonJoint.RightAnkle)); lineRenderer.SetPosition (i++, getJointVector3 (user, SkeletonJoint.RightFoot)); } // Set transforms //Rigidbody rigidbody = leftHand.gameObject.GetComponent (typeof(Rigidbody)) as Rigidbody; //rigidbody.MovePosition (getJointVector3 (user, SkeletonJoint.LeftHand)); //rigidbody = rightHand.gameObject.GetComponent (typeof(Rigidbody)) as Rigidbody; //rigidbody.MovePosition (getJointVector3 (user, SkeletonJoint.RightHand)); if (head != null) { head.position = getJointVector3 (user, SkeletonJoint.Head); } //leftHand.position = getJointVector3(user, SkeletonJoint.LeftHand); //rightHand.position = getJointVector3(user, SkeletonJoint.RightHand); } } }