void Start() { error = ErrorLog.GetInstance(); player = GameObject.Find("Player"); Kinect = KinectController.Instance; this.kinectInUse = Kinect.useKinect; //camHolder = GameObject.Find("CamHolder").transform; body = GameObject.Find("Player").GetComponent <CapsuleCollider>(); leftArm = GameObject.Find("LeftArm"); rightArm = GameObject.Find("RightArm"); armaturePlayer1 = new BodyArmature("PlayerMainAvatar"); }
void Start() { camHolder = GameObject.Find("CamHolder").transform; body = GameObject.Find("Player").GetComponent <CapsuleCollider> (); leftArm = GameObject.Find("LeftArm"); rightArm = GameObject.Find("RightArm"); armaturePlayer1 = new BodyArmature("PlayerMainAvatar"); if (Config.Instance.UseKinect) { Logger.Log("Verbinde zu Kinect: " + Config.Instance.KinectAddress); Kinect = new Kinect(Config.Instance.KinectAddress); } }
/// <summary> /// Gets the gesture. /// </summary> /// <returns> /// The gesture. /// </returns> /*public Gesture getGesture() * { * if (!Config.UseKinect) * return Gesture.None; * * float qualityLeftHand = VrpnKinect.getValue(VrpnKinect.Analog.LeftHandGestureTrackingState); * float qualityRightHand = VrpnKinect.getValue(VrpnKinect.Analog.RightHandGestureTrackingState); * float stateLeftHand = VrpnKinect.getValue(VrpnKinect.Analog.LeftHandGestureState); * float stateRightHand = VrpnKinect.getValue(VrpnKinect.Analog.RightHandGestureState); * * if (qualityLeftHand < 0.5 || qualityRightHand < 0.5) * return Gesture.None; * * if (stateLeftHand > 0.5 && stateRightHand < 0.5) * return Gesture.RotateLeft; * if (stateLeftHand < 0.5 && stateRightHand > 0.5) * return Gesture.RotateRight; * if (stateLeftHand > 0.5 && stateRightHand > 0.5) * return Gesture.Forward; * else * return Gesture.None; // Gesture.Backward; * }*/ private void setArmatureByKinect(BodyArmature armature) { /* * Vector3 leftHand = getSensor(VrpnKinect.Sensor.LeftHand); * Vector3 leftElbow = getSensor(VrpnKinect.Sensor.LeftElbow); * Vector3 leftShoulder = getSensor(VrpnKinect.Sensor.LeftShoulder); * * leftHand.z *= -1; * leftElbow.z *= -1; * leftShoulder.z *= -1; * * //armature.setArmLeftDirection(leftElbow - leftShoulder); * armature.setArmLowerLeftDirection(leftHand - leftElbow); * * Vector3 head = getSensor(VrpnKinect.Sensor.Head); * Vector3 waist = getSensor(VrpnKinect.Sensor.Waist); * * //armature.setSpineDirection(head - waist); * * // get angle from Kinect: head - shoulderCenter * // set neck angle * * // get angle from Kinect: waiste - shoulderCenter * // set spine angle * * // get angle from Kinect: shoulder - elbow * // set armupper angle * * // get angle from Kinect: elbow - wrist * // set armlower angle * * // ---- ????? * * // get angle from Kinect: hip - knee * // set legupper angle * * // get angle from Kinect: knee - ankle * // set leglower angle */ }
void Start() { camHolder = GameObject.Find ( "CamHolder" ).transform; body = GameObject.Find ( "Player" ).GetComponent<CapsuleCollider> (); leftArm = GameObject.Find ( "LeftArm" ); rightArm = GameObject.Find ( "RightArm" ); armaturePlayer1 = new BodyArmature ( "PlayerMainAvatar" ); if ( Config.Instance.UseKinect ) { Logger.Log ( "Verbinde zu Kinect: " + Config.Instance.KinectAddress ); Kinect = new Kinect ( Config.Instance.KinectAddress ); } }
/// <summary> /// Gets the gesture. /// </summary> /// <returns> /// The gesture. /// </returns> /*public Gesture getGesture() { if (!Config.UseKinect) return Gesture.None; float qualityLeftHand = VrpnKinect.getValue(VrpnKinect.Analog.LeftHandGestureTrackingState); float qualityRightHand = VrpnKinect.getValue(VrpnKinect.Analog.RightHandGestureTrackingState); float stateLeftHand = VrpnKinect.getValue(VrpnKinect.Analog.LeftHandGestureState); float stateRightHand = VrpnKinect.getValue(VrpnKinect.Analog.RightHandGestureState); if (qualityLeftHand < 0.5 || qualityRightHand < 0.5) return Gesture.None; if (stateLeftHand > 0.5 && stateRightHand < 0.5) return Gesture.RotateLeft; if (stateLeftHand < 0.5 && stateRightHand > 0.5) return Gesture.RotateRight; if (stateLeftHand > 0.5 && stateRightHand > 0.5) return Gesture.Forward; else return Gesture.None; // Gesture.Backward; }*/ private void setArmatureByKinect( BodyArmature armature ) { /* Vector3 leftHand = getSensor(VrpnKinect.Sensor.LeftHand); Vector3 leftElbow = getSensor(VrpnKinect.Sensor.LeftElbow); Vector3 leftShoulder = getSensor(VrpnKinect.Sensor.LeftShoulder); leftHand.z *= -1; leftElbow.z *= -1; leftShoulder.z *= -1; //armature.setArmLeftDirection(leftElbow - leftShoulder); armature.setArmLowerLeftDirection(leftHand - leftElbow); Vector3 head = getSensor(VrpnKinect.Sensor.Head); Vector3 waist = getSensor(VrpnKinect.Sensor.Waist); //armature.setSpineDirection(head - waist); // get angle from Kinect: head - shoulderCenter // set neck angle // get angle from Kinect: waiste - shoulderCenter // set spine angle // get angle from Kinect: shoulder - elbow // set armupper angle // get angle from Kinect: elbow - wrist // set armlower angle // ---- ????? // get angle from Kinect: hip - knee // set legupper angle // get angle from Kinect: knee - ankle // set leglower angle */ }