标签:store 不容易 led listener 现在 手势 场景 位置 实现
有两种方法可以为Unity项目添加手势检测和手势识别功能。
1. KinectManager,示例场景中MainCamera的一个组件。
2. 以编程方式指定用户特定的姿势。需要实现KinectGestures.GestureListenerInterface。KinectScripts / Extras / SimpleGestureListener.cs脚本中有一段示例。
(没有这个脚本的下载 用于Unity3D的Kinect Wrapper Package)
RaiseRightHand / RaiseLeftHand - 左手或右手在肩膀上抬起,保持不变至少1.0秒。
Psi - 双手抬起肩膀,保持这个姿势1.0秒。
Tpose - 双臂张开,垂直于身体(T形姿势),持续1.0秒。
Stop - 一只手向下(down),另一只手略微在腰部以下的位置抬起(slightly to the side)。
Wave - 右手向左挥动然后向右挥动,或左手向右挥动然后向左挥动。
SwipeLeft - 右手向左滑动。
SwipeRight - 左手向右滑动。
SwipeUp / SwipeDown - 用左手或右手向上或向下滑动
Click - 左手或右手保持至少2.5秒。与光标控制结合使用很有用。
RightHandCursor / LeftHandCursor - 伪手势,用于移动右手或左手提供光标。
ZoomOut - 开始时,左手和右手位于前面并在放在一起,然后朝着不同的方向移动。
ZoomIn - 开始时,左手和右手相距至少0.7米并且位于前方,然后双手互相靠近。
Wheel - 开始时,左手和右手放在与肩宽的地方,并且在身体前面,然后是手开始转动一个假想中的轮子,向左(正角度)或向右(负角度)。
Jump - 臀部中心在1.5秒内至少比之前高出15厘米。
Squat - 臀部中心在1.5秒内至少比之前低15厘米。
Push - 在1.5秒内用左手或右手向前推。
Pull - 在1.5秒内向后拉用左手或右手往后拉。
UserDetected()用于启动手势检测。
UserLost()用于清除变量或释放分配的资源。
UserDetected() remove the gestures,不被需要,在调用UserLost()之前,它们会自动删除。
GestureInProgress() - 继续,在gesture已经被启动,但是没有完成,也没有被取消时用。
GestureCompleted() 完成后调用。
然后就可以添加自己的代码,用来处理已完成的gesture。
GestureCancelled() 手势被取消时使用。
如何添加自己的手势:
传感器报告Kinect坐标系中被跟踪的身体部位的三维坐标,以米为单位。
打开 Assets / KinectScripts / KinectGestures.cs
Kinect for Unity3D开发 之 手势/姿势(Gesture)识别基础知识
标签:store 不容易 led listener 现在 手势 场景 位置 实现
原文地址:https://www.cnblogs.com/sialianzi/p/10109761.html