unity kinect 初始代码
来源:互联网 发布:产业结构优化理论 编辑:程序博客网 时间:2024/06/05 15:49
using UnityEngine.UI;
public class UseOverKinectManager : MonoBehaviour {
public RawImage kinectImg;
public Canvas canvas;
public Image rightHand;
public Image btn1;
// Use this for initialization
void StARt () { }
// Update is called once per frame
void Update () {
bool isInit = KinectManager.Instance.IsInitialized(); //检测设备可用
if (isInit) { // print("width = " + KinectManager.Instance.GetDepthImageWidth() + " height = " + KinectManager.Instance.GetDepthImageHeight()); //宽高
//设备准备好了 可以读取了
if (kinectImg.texture == null) { Texture2D kinectPic = KinectManager.Instance.GetUsersClrTex(); //从设备获取彩色数据 // Texture2D kinectPic = KinectManager.Instance.GetUsersLblTex(); //获取深度数据量 kinectImg.texture = kinectPic; //把彩色数据给控件显示 } if (KinectManager.Instance.IsUserDetected()) { //检测到玩家 long userId = KinectManager.Instance.GetPrimARyUserID(); //获取用户id int jointType = (int)KinectInterop.JointType.HandRight; if (KinectManager.Instance.IsJointTracked(userId,jointType)) {
//关节点被追踪到 Vector3 rightHandPos = KinectManager.Instance.GetJointKinectPosition(userId, jointType);
//1.获取关节点3D坐标 Vector3 rightHandScreenPos = Camera.main.WorldToScreenPoint(rightHandPos);
//2.关节点坐标转换成屏幕坐标 Vector2 rightHandSenPos = new Vector2(rightHandScreenPos.x, rightHandScreenPos.y); // print("x = " + rightHandScreenPos.x + " y = " + rightHandScreenPos.y); Vector2 rightHandUguiPos; if(RectTransformUtility.ScreenPointToLocalPointInRectangle((RectTransform)canvas.transform, rightHandSenPos, null,out rightHandUguiPos)) {
//表示右手在矩形范围内 RectTransform rightRectTf = rightHand.transform as RectTransform; rightRectTf.anchoredPosition = rightHandUguiPos;
} if (RectTransformUtility.RectangleContainsScreenPoint(btn1.rectTransform,rightHandSenPos,null)) {
//手在按钮1上悬停
// print("手在按钮1上悬停"); KinectInterop.HandState rightHandState = KinectManager.Instance.GetRightHandState(userId); if (rightHandState == KinectInterop.HandState.Closed) {
//print("握拳选择了");
}
} else { // print("离开"); } } } } } }
- unity kinect 初始代码
- Kinect for Unity V2 代码示例(一)
- Kinect for Unity V2 代码示例(二)
- Kinect for Unity V2 代码示例(三) 手势控制
- Unity+Kinect SDK
- unity +kinect CMU笔记
- kinect for Unity开发
- Unity Kinect应用
- Unity使用Kinect初级教程
- [Kinect]Kinect与Unity结合开发
- [Unity3D——用代码说明一切]Unity结合Kinect2体感开发:Kinect面部识别
- Kinect结合Unity开发(一)
- kinect Unity开发文章链接
- unity kinect开发电脑配置
- GLUT程序初始代码
- java初始代码块
- 小工具初始代码
- [Unity3D——用代码说明一切]Unity结合Kinect2体感开发:Kinect控制U3D中的模型
- 注解 整理
- 20171107
- easyUI获取tree、combotree节点级别
- 编译Android源码
- c++中抽象基类
- unity kinect 初始代码
- Servlet
- Android Webview拦截ajax请求
- linux下的重要目录
- Cas单点登录(3)数据库验证用户之无密码加密
- Javascript模块化封装与浏览器加载
- 5.Longest Palindromic Substring leetcode java
- ES6-函数的扩展-rest参数
- 6-20 No Less Than X in BST(20 point(s))