Kinect.FacetrackingManager.Update C# (CSharp) Method

Update() public method

public Update ( ) : void
return void
        void Update()
        {
            if (isFacetrackingInitialized)
            {
                KinectManager kinectManager = KinectManager.Instance;
                if (kinectManager && kinectManager.IsInitialized())
                {
                    primaryUserID = kinectManager.GetUserIdByIndex(playerIndex);
                }

                // update the face tracker
                if (sensorData.sensorInterface.UpdateFaceTracking())
                {
                    // estimate the tracking state
                    isTrackingFace = sensorData.sensorInterface.IsFaceTracked(primaryUserID);

                    // get the facetracking parameters
                    if (isTrackingFace)
                    {
                        lastFaceTrackedTime = Time.realtimeSinceStartup;

                        // get face rectangle
                        //bGotFaceRect = sensorData.sensorInterface.GetFaceRect(primaryUserID, ref faceRect);

                        // get head position
                        bGotHeadPos = sensorData.sensorInterface.GetHeadPosition(primaryUserID, ref headPos);

                        // get head rotation
                        bGotHeadRot = sensorData.sensorInterface.GetHeadRotation(primaryUserID, ref headRot);

                        // get the animation units
                        bGotAU = sensorData.sensorInterface.GetAnimUnits(primaryUserID, ref dictAU);

                        // get the shape units
                        bGotSU = sensorData.sensorInterface.GetShapeUnits(primaryUserID, ref dictSU);

                        if (faceModelMesh != null && faceModelMesh.activeInHierarchy)
                        {
                            // apply model vertices to the mesh
                            if (!bFaceModelMeshInited)
                            {
                                CreateFaceModelMesh();
                            }
                        }

                        if (getFaceModelData)
                        {
                            UpdateFaceModelMesh();
                        }
                    }
                    else if ((Time.realtimeSinceStartup - lastFaceTrackedTime) <= faceTrackingTolerance)
                    {
                        // allow tolerance in tracking
                        isTrackingFace = true;
                    }

                    if (faceModelMesh != null && bFaceModelMeshInited)
                    {
                        faceModelMesh.SetActive(isTrackingFace);
                    }
                }
            }
        }