public KinectInterop.SensorData OpenDefaultSensor(KinectInterop.FrameSource dwFlags, float sensorAngle, bool bUseMultiSource)
    {
        KinectInterop.SensorData sensorData = new KinectInterop.SensorData();
        sensorFlags = dwFlags;

        kinectSensor = KinectSensor.GetDefault();
        if(kinectSensor == null)
            return null;

        coordMapper = kinectSensor.CoordinateMapper;

        this.bodyCount = kinectSensor.BodyFrameSource.BodyCount;
        sensorData.bodyCount = this.bodyCount;
        sensorData.jointCount = 25;

        sensorData.depthCameraFOV = 60f;
        sensorData.colorCameraFOV = 53.8f;
        sensorData.depthCameraOffset = -0.05f;
        sensorData.faceOverlayOffset = -0.04f;

        if((dwFlags & KinectInterop.FrameSource.TypeBody) != 0)
        {
            if(!bUseMultiSource)
                bodyFrameReader = kinectSensor.BodyFrameSource.OpenReader();

            bodyData = new Body[sensorData.bodyCount];
        }

        var frameDesc = kinectSensor.ColorFrameSource.CreateFrameDescription(ColorImageFormat.Rgba);
        sensorData.colorImageWidth = frameDesc.Width;
        sensorData.colorImageHeight = frameDesc.Height;

        if((dwFlags & KinectInterop.FrameSource.TypeColor) != 0)
        {
            if(!bUseMultiSource)
                colorFrameReader = kinectSensor.ColorFrameSource.OpenReader();

            sensorData.colorImage = new byte[frameDesc.BytesPerPixel * frameDesc.LengthInPixels];
        }

        sensorData.depthImageWidth = kinectSensor.DepthFrameSource.FrameDescription.Width;
        sensorData.depthImageHeight = kinectSensor.DepthFrameSource.FrameDescription.Height;

        if((dwFlags & KinectInterop.FrameSource.TypeDepth) != 0)
        {
            if(!bUseMultiSource)
                depthFrameReader = kinectSensor.DepthFrameSource.OpenReader();

            sensorData.depthImage = new ushort[kinectSensor.DepthFrameSource.FrameDescription.LengthInPixels];
        }

        if((dwFlags & KinectInterop.FrameSource.TypeBodyIndex) != 0)
        {
            if(!bUseMultiSource)
                bodyIndexFrameReader = kinectSensor.BodyIndexFrameSource.OpenReader();

            sensorData.bodyIndexImage = new byte[kinectSensor.BodyIndexFrameSource.FrameDescription.LengthInPixels];
        }

        if((dwFlags & KinectInterop.FrameSource.TypeInfrared) != 0)
        {
            if(!bUseMultiSource)
                infraredFrameReader = kinectSensor.InfraredFrameSource.OpenReader();

            sensorData.infraredImage = new ushort[kinectSensor.InfraredFrameSource.FrameDescription.LengthInPixels];
        }

        //if(!kinectSensor.IsOpen)
        {
            //Debug.Log("Opening sensor, available: " + kinectSensor.IsAvailable);
            kinectSensor.Open();
        }

        float fWaitTime = Time.realtimeSinceStartup + 3f;
        while(!kinectSensor.IsAvailable && Time.realtimeSinceStartup < fWaitTime)
        {
            // wait for sensor to open
        }

        Debug.Log("K2-sensor " + (kinectSensor.IsOpen ? "opened" : "closed") +
                  ", available: " + kinectSensor.IsAvailable);

        if(bUseMultiSource && dwFlags != KinectInterop.FrameSource.TypeNone && kinectSensor.IsOpen)
        {
            multiSourceFrameReader = kinectSensor.OpenMultiSourceFrameReader((FrameSourceTypes)((int)dwFlags & 0x3F));
        }

        return sensorData;
    }
    void Start()
    {
        _Sensor = Windows.Kinect.KinectSensor.GetDefault();

        if (_Sensor != null)
        {
            _Reader = _Sensor.BodyFrameSource.OpenReader();

            if (!_Sensor.IsOpen)
            {
                _Sensor.Open();
            }

            isActive = true;

            // Floor
            _Reader.FrameArrived += (object sender, BodyFrameArrivedEventArgs e) =>
            {
                using(var frame = e.FrameReference.AcquireFrame())
                {
                    this.currentTime = frame.RelativeTime;
                    this.currentFloor = frame.FloorClipPlane;
                }
            };
        }
    }
Exemple #3
0
    // Use this for initialization
    void Start()
    {
        _bones = new GameObject[7] {
            Head, HandLeft, HandRight, KneeLeft, KneeRight, ShoulderLeft, ShoulderRight
        };

        _Sensor = Kinect2.KinectSensor.GetDefault();

        if (_Sensor != null)
        {
            if (!_Sensor.IsOpen)
            {
                if (bDebugLog)
                {
                    Debug.Log("[Kinect2] KinectSensor Open");
                }
                _Sensor.Open();

                // ボディリーダーを開く
                _Reader = _Sensor.BodyFrameSource.OpenReader();
                _Reader.FrameArrived += BodyFrameReader_FrameArrived;
            }
        }

        //gimmick = GameObject.Find("ita");
        flag = false;
    }
	// Use this for initialization
	void Start () {

        print("START");
        /*Get Kinect Sensor and start reading data*/

        //Get Default Kinect Sensor
        sensor = null;
        sensor = KinectSensor.GetDefault();

        if( sensor != null )
        {
            //We have a sensor connected

            print("SENSOR CONNECTED");
            //Open the connection/Start reading the data
            reader = sensor.BodyFrameSource.OpenReader();
            if( !sensor.IsOpen )
            {
                sensor.Open();
            }
            

        } else
        {
            print("NO KINECT CONNECTED");
        }

        print(sensor);
	}
    // Use this for initialization
    void Start()
    {
        // set up kinect connection
        sensor = KinectSensor.GetDefault();

        if (sensor != null)
        {
            bodyReader = sensor.BodyFrameSource.OpenReader();

        //			faceFrameSources = new FaceFrameSource[bodyCount];
        //			faceFrameReaders = new FaceFrameReader[bodyCount];
        //
        //			for(int i = 0; i < bodyCount; ++i)
        //			{
        //				faceFrameSources[i] = FaceFrameSource.Create(sensor, 0, FaceFrameFeatures.LookingAway);
        //				faceFrameReaders[i] = faceFrameSources[i].OpenReader();
        //			}
        //
        //			faceFrameResults = new FaceFrameResult[bodyCount];

            if (!sensor.IsOpen)
                sensor.Open ();
        }
        else
            Debug.Log ("No Kinect Sensor found. Check connections / power");
    }
	void Start () {
		_Sensor = KinectSensor.GetDefault();
		if (_Sensor != null) {
			_Reader = _Sensor.BodyFrameSource.OpenReader();
			if (!_Sensor.IsOpen)
				_Sensor.Open();
		}   
	}
    public void CloseSensor(KinectInterop.SensorData sensorData)
    {
        if(coordMapper != null)
        {
            coordMapper = null;
        }

        if(bodyFrameReader != null)
        {
            bodyFrameReader.Dispose();
            bodyFrameReader = null;
        }

        if(bodyIndexFrameReader != null)
        {
            bodyIndexFrameReader.Dispose();
            bodyIndexFrameReader = null;
        }

        if(colorFrameReader != null)
        {
            colorFrameReader.Dispose();
            colorFrameReader = null;
        }

        if(depthFrameReader != null)
        {
            depthFrameReader.Dispose();
            depthFrameReader = null;
        }

        if(infraredFrameReader != null)
        {
            infraredFrameReader.Dispose();
            infraredFrameReader = null;
        }

        if(multiSourceFrameReader != null)
        {
            multiSourceFrameReader.Dispose();
            multiSourceFrameReader = null;
        }

        if(kinectSensor != null)
        {
            if (kinectSensor.IsOpen)
            {
                kinectSensor.Close();
            }

            kinectSensor = null;
        }
    }
Exemple #8
0
    // Use this for initialization
    void Start()
    {
        Sensor = KinectSensor.GetDefault();

        if (Sensor != null) {
            Reader = Sensor.BodyFrameSource.OpenReader ();

            if (!Sensor.IsOpen) {
                Sensor.Open ();
            }
        }
    }
	void OnApplicationQuit() {
		if (_Reader != null){
			_Reader.Dispose();
			_Reader = null;
		}
		
		if (_Sensor != null) {
			if (_Sensor.IsOpen)
				_Sensor.Close();
			_Sensor = null;
		}
	}
Exemple #10
0
 void Start()
 {
     _Sensor = Windows.Kinect.KinectSensor.GetDefault();
     if (_Sensor != null)
     {
         _Reader = _Sensor.BodyFrameSource.OpenReader();
         if (!_Sensor.IsOpen)
         {
             _Sensor.Open();
         }
     }
 }
Exemple #11
0
        void Start()
        {
            _sensor = Kinect.KinectSensor.GetDefault();

            if (_sensor != null)
            {
                _reader = _sensor.BodyFrameSource.OpenReader();

                if (!_sensor.IsOpen)
                {
                    _sensor.Open();
                }
            }
        }
        void Start()
        {
            _sensor   = Kinect.KinectSensor.GetDefault();
            bodies    = new Dictionary <ulong, GameObject>();
            trackedID = new List <string>();
            if (_sensor != null)
            {
                _reader = _sensor.BodyFrameSource.OpenReader();

                if (!_sensor.IsOpen)
                {
                    _sensor.Open();
                }
            }
        }
Exemple #13
0
    // Called when the application closes
    void OnApplicationQuit()
    {
        if (Reader != null) {
            Reader.Dispose();
            Reader = null;
        }

        if (Sensor != null) {
            if (Sensor.IsOpen) {
                Sensor.Close();
            }

            Sensor = null;
        }
    }
    void Start()
    {
        _Sensor = KinectSensor.GetDefault();

        if (_Sensor != null)
        {
            _Reader = _Sensor.BodyFrameSource.OpenReader();

            if (!_Sensor.IsOpen)
            {
                _Sensor.Open();
                coordinateMapper=_Sensor.CoordinateMapper;
            }
        }
    }
    void Start()
    {
        Debug.Log ("got to bodysourcemanager");
        GestureManager = this.GetComponent<CustomGestureManager> ();
        _Sensor = KinectSensor.GetDefault();

        if (_Sensor != null)
        {
            _Reader = _Sensor.BodyFrameSource.OpenReader();

            if (!_Sensor.IsOpen)
            {
                _Sensor.Open();
            }
        }
    }
Exemple #16
0
 void OnApplicationQuit()
 {
     if (_Reader != null)
     {
         _Reader.Dispose();
         _Reader = null;
     }
     if (_Sensor != null)
     {
         if (_Sensor.IsOpen)
         {
             _Sensor.Close();
         }
         _Sensor = null;
     }
 }
    void Start()
    {
        _Sensor = KinectSensor.GetDefault();

        if (_Sensor != null)
        {
            _Reader = _Sensor.BodyFrameSource.OpenReader();

            if (!_Sensor.IsOpen)
            {
                _Sensor.Open();
                GameObject GameControllerObject = GameObject.Find("GameController");
                GameControllerObject.GetComponent<GameController>().kinectActive = true;
            }
        }
    }
    //开启kinect.
    void Start()
    {
        //实例化KinectSensor类.
        _Sensor = KinectSensor.GetDefault();

        if (_Sensor != null)
        {
            //通过资源池,打开输出流.
            _Reader = _Sensor.BodyFrameSource.OpenReader();

            if (!_Sensor.IsOpen)
            {
                //开启kinect.
                _Sensor.Open();
            }
        }
    }
    void Start()
    {
        /*_plane = GameObject.CreatePrimitive(PrimitiveType.Plane);
        _plane.transform.position = new Vector3 (0, 0, 0);
        */
        _Sensor = KinectSensor.GetDefault();
        /*Vector3 _CurrentVector = new Vector3 (0, 1, 0);
        */
        if (_Sensor != null)
        {
            _Reader = _Sensor.BodyFrameSource.OpenReader();

            if (!_Sensor.IsOpen)
            {
                _Sensor.Open();
            }
        }
    }
	// Use this for initialization
	void Start () {
		_Sensor = KinectSensor.GetDefault();

		if (_Sensor != null)
		{
			_Reader = _Sensor.BodyFrameSource.OpenReader();

			if (!_Sensor.IsOpen)
			{
				_Sensor.Open();
			}
            if(_Sensor.IsAvailable)
                kinectEnabled = true;
            gestureDetectorList = new List<GestureDetector>();
		}


	}
Exemple #21
0
    private void OnApplicationQuit()
    {
        if (Reader != null)
        {
            Reader.Dispose();
            Reader = null;
        }

        if (Sensor != null)
        {
            if (Sensor.IsOpen)
            {
                Sensor.Close();
            }

            Sensor = null;
        }
    }
Exemple #22
0
        void OnApplicationQuit()
        {
            if (_reader != null)
            {
                _reader.Dispose();
                _reader = null;
            }

            if (_sensor != null)
            {
                if (_sensor.IsOpen)
                {
                    _sensor.Close();
                }

                _sensor = null;
            }
        }
    // shut the kinect down
    void OnApplicationQuit()
    {
        if (bodyReader != null)
        {
            bodyReader.Dispose();
            bodyReader = null;
        }

        if (sensor != null)
        {
            if (sensor.IsOpen)
            {
                sensor.Close();
            }

            sensor = null;
        }
    }
    void OnApplicationQuit()
    {
        Util.Log("Cleaning up Kinect...");
        if (_Reader != null)
        {
            _Reader.Dispose();
            _Reader = null;
        }

        if (_Sensor != null)
        {
            if (_Sensor.IsOpen)
            {
                _Sensor.Close();
            }

            _Sensor = null;
        }
    }
    // Use this for initialization
    void Start()
    {
        turnScript = Player.GetComponent<Turning>();
        // get the sensor object
        
        this.kinectSensor = KinectSensor.GetDefault();

        if (this.kinectSensor != null)
        {
            this.bodyCount = this.kinectSensor.BodyFrameSource.BodyCount;

            // color reader
            this.colorFrameReader = this.kinectSensor.ColorFrameSource.OpenReader();

            // create buffer from RGBA frame description
            var desc = this.kinectSensor.ColorFrameSource.CreateFrameDescription(ColorImageFormat.Rgba);


            // body data
            this.bodyFrameReader = this.kinectSensor.BodyFrameSource.OpenReader();

            // body frame to use
            this.bodies = new Body[this.bodyCount];

            // initialize the gesture detection objects for our gestures
            this.gestureDetectorList = new List<GestureDetector>();
            for (int bodyIndex = 0; bodyIndex < this.bodyCount; bodyIndex++)
            {
                //PUT UPDATED UI STUFF HERE FOR NO GESTURE
                GestureTextGameObject.text = "none";
                //this.bodyText[bodyIndex] = "none";
                this.gestureDetectorList.Add(new GestureDetector(this.kinectSensor));
            }

            // start getting data from runtime
            this.kinectSensor.Open();
        }
        else
        {
            //kinect sensor not connected
        }
    }
Exemple #26
0
    protected virtual void Start()
    {
        try
        {
            Sensor = Kinect.KinectSensor.GetDefault();

            if (Sensor != null)
            {
                Reader = Sensor.BodyFrameSource.OpenReader();

                if (!Sensor.IsOpen)
                {
                    Sensor.Open();
                }
            }
        }
        catch
        {
            Debug.Log("Error: No Kinect found.");
        }
    }
    protected virtual void Start()
    {
        try
        {
            Sensor = Kinect.KinectSensor.GetDefault();

            if (Sensor != null)
            {
                Reader = Sensor.BodyFrameSource.OpenReader();

                if (!Sensor.IsOpen)
                {
                    Sensor.Open();
                }
            }
        }
        catch
        {
            Debug.Log("Error: No Kinect found.");
        }
    }
Exemple #28
0
    //Methof to initialise your kinect
    void InitKinect()
    {
        _getsureBasePath = Path.Combine(Application.streamingAssetsPath, "GestureDB/JumpDB.gbd");
        _dbGestures      = VisualGestureBuilderDatabase.Create(_getsureBasePath);
        _bodies          = new Windows.Kinect.Body[6];
        _kinect          = Windows.Kinect.KinectSensor.GetDefault();
        _kinect.Open();
        _gestureFrameSource = VisualGestureBuilderFrameSource.Create(_kinect, 0);

        //for each gesture in trained database of custom gestures - add them to kinect frame source
        foreach (Gesture gest in _dbGestures.AvailableGestures)
        {
            _gestureFrameSource.AddGesture(gest);
            if (gest.Name == "Jump")
            {
                _jump = gest;
            }
            else if (gest.Name == "Lean_Left")
            {
                _moveLeft = gest;
            }
            else if (gest.Name == "Lean_Right")
            {
                _moveRight = gest;
            }
            else if (gest.Name == "Swing")
            {
                _swing = gest;
            }
        }
        _bodyFrameSource = _kinect.BodyFrameSource;
        _bodyFrameReader = _bodyFrameSource.OpenReader();
        _bodyFrameReader.FrameArrived += _bodyFrameReader_FrameArrived;

        _gestureFrameReader               = _gestureFrameSource.OpenReader();
        _gestureFrameReader.IsPaused      = true;
        _gestureFrameReader.FrameArrived += _gestureFrameReader_FrameArrived;
    }
    private void Start()
    {
        // Setup the Kinect Sensor
            KinectSensor = KinectSensor.GetDefault();
            if (KinectSensor != null)
            {
                Debug.Log("Got Sensor!");
                KinectSensor.Open();
                Debug.Log("Opened sensor");
                Reader = KinectSensor.BodyFrameSource.OpenReader();
                Debug.Log("Opened Frame Reader");

                if (!KinectSensor.IsOpen)
                {
                    Debug.Log("Opening Sensor (again...)");
                    KinectSensor.Open();
                }

                // Create enough storage for however many the Kinect can track
                Bodies = new Body[KinectSensor.BodyFrameSource.BodyCount];
            }

            Animate = true;
    }
    //    void OnGUI()
    //    {
    //        GUI.skin.box.fontSize = 11;
    //        const int NumColumns = 2;
    //        for (int i = 0; i < this.bodyCount; i++)
    //        {
    //            GUI.contentColor = this.bodyColors[i];
    //            GUI.Box(new Rect(10 + ((i % NumColumns) * 145), 20 + ((i / NumColumns) * 145), 140, 140), this.bodyText[i]);
    //        }
    //    }
    void OnApplicationQuit()
    {
        if (this.colorFrameReader != null)
        {
            this.colorFrameReader.Dispose();
            this.colorFrameReader = null;
        }

        if (this.bodyFrameReader != null)
        {
            this.bodyFrameReader.Dispose();
            this.bodyFrameReader = null;
        }

        if (this.kinectSensor != null)
        {
            if (this.kinectSensor.IsOpen)
            {
                this.kinectSensor.Close();
            }

            this.kinectSensor = null;
        }
    }
    public KinectInterop.SensorData OpenDefaultSensor(KinectInterop.FrameSource dwFlags, float sensorAngle, bool bUseMultiSource)
    {
        KinectInterop.SensorData sensorData = new KinectInterop.SensorData();
        //sensorFlags = dwFlags;

        kinectSensor = KinectSensor.GetDefault();
        if(kinectSensor == null)
            return null;

        coordMapper = kinectSensor.CoordinateMapper;

        this.bodyCount = kinectSensor.BodyFrameSource.BodyCount;
        sensorData.bodyCount = this.bodyCount;
        sensorData.jointCount = 25;

        sensorData.depthCameraFOV = 60f;
        sensorData.colorCameraFOV = 53.8f;
        sensorData.depthCameraOffset = -0.03f;

        if((dwFlags & KinectInterop.FrameSource.TypeBody) != 0)
        {
            if(!bUseMultiSource)
                bodyFrameReader = kinectSensor.BodyFrameSource.OpenReader();

            bodyData = new Body[sensorData.bodyCount];
        }

        var frameDesc = kinectSensor.ColorFrameSource.CreateFrameDescription(ColorImageFormat.Rgba);
        sensorData.colorImageWidth = frameDesc.Width;
        sensorData.colorImageHeight = frameDesc.Height;

        if((dwFlags & KinectInterop.FrameSource.TypeColor) != 0)
        {
            if(!bUseMultiSource)
                colorFrameReader = kinectSensor.ColorFrameSource.OpenReader();

            sensorData.colorImage = new byte[frameDesc.BytesPerPixel * frameDesc.LengthInPixels];
        }

        sensorData.depthImageWidth = kinectSensor.DepthFrameSource.FrameDescription.Width;
        sensorData.depthImageHeight = kinectSensor.DepthFrameSource.FrameDescription.Height;

        if((dwFlags & KinectInterop.FrameSource.TypeDepth) != 0)
        {
            if(!bUseMultiSource)
                depthFrameReader = kinectSensor.DepthFrameSource.OpenReader();

            sensorData.depthImage = new ushort[kinectSensor.DepthFrameSource.FrameDescription.LengthInPixels];
        }

        if((dwFlags & KinectInterop.FrameSource.TypeBodyIndex) != 0)
        {
            if(!bUseMultiSource)
                bodyIndexFrameReader = kinectSensor.BodyIndexFrameSource.OpenReader();

            sensorData.bodyIndexImage = new byte[kinectSensor.BodyIndexFrameSource.FrameDescription.LengthInPixels];
        }

        if((dwFlags & KinectInterop.FrameSource.TypeInfrared) != 0)
        {
            if(!bUseMultiSource)
                infraredFrameReader = kinectSensor.InfraredFrameSource.OpenReader();

            sensorData.infraredImage = new ushort[kinectSensor.InfraredFrameSource.FrameDescription.LengthInPixels];
        }

        if(!kinectSensor.IsOpen)
        {
            kinectSensor.Open();
        }

        if(bUseMultiSource && dwFlags != KinectInterop.FrameSource.TypeNone && kinectSensor.IsOpen)
        {
            multiSourceFrameReader = kinectSensor.OpenMultiSourceFrameReader((FrameSourceTypes)dwFlags);
        }

        return sensorData;
    }
    //When we quit the application
    void OnApplicationQuit()
    {
        //If we have a data reader
        if( reader != null )
        {
            //Dispose of it
            reader.Dispose();
            reader = null;
        }

        //If we have a sensor
        if( sensor != null )
        {

            //If a connection is open, close it
            if( sensor.IsOpen )
            {
                sensor.Close();
            }

            //Get rid of the reference
            sensor = null;
        }
        
    }
Exemple #33
0
    // Use this for initialization
    void Start()
    {
        AddTag("realtime01");
        AddTag("Body_Replay");

        lineMat       = new Material(Shader.Find("Diffuse"));
        lineMat.color = Color.yellow;
        GameObject temp = GameObject.CreatePrimitive(PrimitiveType.Capsule);

        cylinderMesh = temp.GetComponent <MeshFilter> ().sharedMesh;
        GameObject.Destroy(temp);
        radius      = 0.03f;
        sensitive   = 1.0f;
        body_scale  = 1.0f;
        bone_scale  = 0.02f;
        joint_scale = 0.04f;

        skeletonlist = new GameObject[] {
            skeleton_spinebased
            , skeleton_hipleft
            , skeleton_hipright
            , skeleton_spinemid
            , skeleton_kneeleft
            , skeleton_ankleleft
            , skeleton_kneeright
            , skeleton_ankleright
            , skeleton_spineshoulder
            , skeleton_neck
            , skeleton_shoulderleft
            , skeleton_head
            , skeleton_shoulderright
            , skeleton_elbowleft
            , skeleton_wristleft
            , skeleton_handleft
            , skeleton_elbowright
            , skeleton_wristright
            , skeleton_handright
        };

        canvash = ((RectTransform)canvas.transform).rect.height / 2.0f;
        canvasw = ((RectTransform)canvas.transform).rect.width / 2.0f;
        lefthand.SetActive(false);
        realtime_relation = GameObject.Find("realtime_relation");
        //turnScript = Player.GetComponent<Turning>();
        // get the sensor object

        this.kinectSensor = Kinect.KinectSensor.GetDefault();

        if (this.kinectSensor != null)
        {
            this.bodyCount = this.kinectSensor.BodyFrameSource.BodyCount;

            // color reader
            this.colorFrameReader = this.kinectSensor.ColorFrameSource.OpenReader();

            // create buffer from RGBA frame description
            var desc = this.kinectSensor.ColorFrameSource.CreateFrameDescription(Kinect.ColorImageFormat.Rgba);


            // body data
            this.bodyFrameReader = this.kinectSensor.BodyFrameSource.OpenReader();

            // body frame to use
            this.bodies = new Kinect.Body[this.bodyCount];

            // initialize the gesture detection objects for our gestures
            this.gestureDetectorList = new List <GestureDetector>();


            //real_time_skeleton_init ();
            for (int bodyIndex = 0; bodyIndex < this.bodyCount; bodyIndex++)
            {
                //PUT UPDATED UI STUFF HERE FOR NO GESTURE
                //GestureTextGameObject.text = "none";
                //this.bodyText[bodyIndex] = "none";
                this.gestureDetectorList.Add(new GestureDetector(this.kinectSensor));
            }

            // start getting data from runtime
            this.kinectSensor.Open();
        }
        else
        {
            //kinect sensor not connected
        }
    }
    public void CloseSensor(KinectInterop.SensorData sensorData)
    {
        if(coordMapper != null)
        {
            coordMapper = null;
        }

        if(bodyFrameReader != null)
        {
            bodyFrameReader.Dispose();
            bodyFrameReader = null;
        }

        if(bodyIndexFrameReader != null)
        {
            bodyIndexFrameReader.Dispose();
            bodyIndexFrameReader = null;
        }

        if(colorFrameReader != null)
        {
            colorFrameReader.Dispose();
            colorFrameReader = null;
        }

        if(depthFrameReader != null)
        {
            depthFrameReader.Dispose();
            depthFrameReader = null;
        }

        if(infraredFrameReader != null)
        {
            infraredFrameReader.Dispose();
            infraredFrameReader = null;
        }

        if(multiSourceFrameReader != null)
        {
            multiSourceFrameReader.Dispose();
            multiSourceFrameReader = null;
        }

        if(kinectSensor != null)
        {
            //if (kinectSensor.IsOpen)
            {
                //Debug.Log("Closing sensor, available: " + kinectSensor.IsAvailable);
                kinectSensor.Close();
            }

            float fWaitTime = Time.realtimeSinceStartup + 3f;
            while(kinectSensor.IsOpen && Time.realtimeSinceStartup < fWaitTime)
            {
                // wait for sensor to close
            }

            Debug.Log("K2-sensor " + (kinectSensor.IsOpen ? "opened" : "closed") +
                      ", available: " + kinectSensor.IsAvailable);

            kinectSensor = null;
        }
    }
    // Use this for initialization
    void Start()
    {
        //_effects.Add (_lightening);

        // GUI color and text objects
        this.bodyColors = new UnityEngine.Color[] {
            UnityEngine.Color.red,
            UnityEngine.Color.yellow,
            UnityEngine.Color.green,
            UnityEngine.Color.blue,
            UnityEngine.Color.cyan,
            UnityEngine.Color.magenta
        };

        this.bodyText = new string[this.bodyColors.Length];

        // get the sensor object
        this.kinectSensor = KinectSensor.GetDefault();

        if (this.kinectSensor != null)
        {
            this.bodyCount = this.kinectSensor.BodyFrameSource.BodyCount;

            // color reader
            this.colorFrameReader = this.kinectSensor.ColorFrameSource.OpenReader();

            // create buffer from RGBA frame description
            var desc = this.kinectSensor.ColorFrameSource.CreateFrameDescription(ColorImageFormat.Rgba);
            this.colorData = new byte[desc.BytesPerPixel * desc.LengthInPixels];

            this.colorTexture = new Texture2D(desc.Width, desc.Height, TextureFormat.RGBA32, false);

            // body data
            this.bodyFrameReader = this.kinectSensor.BodyFrameSource.OpenReader();

            // body frame to use
            this.bodies = new Body[this.bodyCount];

            // initialize the gesture detection objects for our gestures
            this.gestureDetectorList = new List<GestureDetector>();
            for (int bodyIndex = 0; bodyIndex < this.bodyCount; bodyIndex++)
            {
                this.bodyText[bodyIndex] = "none";
                this.gestureDetectorList.Add(new GestureDetector(this.kinectSensor, this));
            }

            // start getting data from runtime
            this.kinectSensor.Open();
        }
    }
    void Start()
    {
        _Sensor = KinectSensor.GetDefault();

        Util.Log("Started BodySourceManager. Found Sensor: {0}", (_Sensor != null));

        if (_Sensor != null)
        {
            _Reader = _Sensor.BodyFrameSource.OpenReader();

            if (!_Sensor.IsOpen)
            {
                _Sensor.Open();
            }
        }
    }