【Unity/Kinect】Kinect入门——项目搭建
本文是Unity Store里的官方Demo包中的ReadMe翻译(别人翻的),介绍了用Unity如何入门搭建起一个Kinect项目工程。
非常感谢下面这位大大的无私奉献!
如何运行示例?
1 下载并安装Kinect v2 SDK在下一节中描述。
2 打开场景“KinectAvatarsDemo”,位于/ AvatarsDemo文件夹
3 运行场景。移动的化身和cube-man反映你的动作。
4 使用左手或右手来控制屏幕上的hand-cursor。
5 尝试建议的一个或多个手势和确保他们正确地检测到。
6 打开并运行“KinectGesturesDemo”场景,位于/ GesturesDemo文件夹。使用手刷(左或右)表示立方体向左或向右拐。
7 打开并运行“KinectInteractionDemo”场景,位于/ InteractionDemo文件夹。使用手柄获取一个对象,然后将其拖。张开手来释放对象。试着拖拽对象与你的右手和你的左手。
8 打开并运行“KinectOverlayDemo”场景,位于/ OverlayDemo文件夹。观察绿球遵循你的右手的位置在屏幕上。
安装Kinect v2 SDK
1 下载Kinect为Windows SDK 2.0。这是下载页面:http://www.microsoft.com/en-us/download/details.aspx?id=44561
2 运行安装程序。Kinect SDK安装/运行时简单明了。
3 Kinect v2传感器连接。所需的驱动程序自动安装。
为什么有两个化身在现场?
两个阿凡达的意义(3d人形字符)在现场演示,你可以都——镜像和非镜像的运动。
首先,你可以有一个阿凡达,反映你的运动。这是你所面临的一个例子。正如你所看到的,它的变换Y-rotation(绕轴旋转)设置为180度。有一个AvatarController-component,附着在《阿凡达》的游戏对象及其镜像运动参数启用。例如,反映运动意味着当你举起你的左手《阿凡达》的抬起右手,反之亦然,像一面镜子。
第二个阿凡达,一个背你,不是镜像。复制你的动作完全一样。你的左边是他的左和右右。这么看,你也住在你的背部转向主相机。其变换Y-rotation设置为0,AvatarController的镜像运动的参数是禁用的。
为了得到正确的《阿凡达》的立场和运动,第一组的位置和旋转在现场,《阿凡达》的游戏对象。然后将AvatarController-component附加到《阿凡达》的游戏对象并设置其镜像运动的相应参数。
如何在你的项目里重用Kinect-Example?
1 复制文件夹的KinectScripts资料文件夹的项目的资料文件夹的例子。这个文件夹包含所有需要的脚本,过滤器和接口。
2 复制文件夹“Resources”和“Standard Assets’’文件夹的项目的资料文件夹的例子。这些文件夹包含所需的库,包装类和资源。
3 等到统一检测和编译新复制的资源和脚本。
4 添加“AvatarController”分场景中的每个《阿凡达》(人形字符),你需要控制Kinect-sensor。
5 AvatarController禁用的镜像运动参数,如果《阿凡达》在同一方向移动用户。启用它,如果《阿凡达》应该反映用户的动作。
6 添加到MainCamera KinectManager的分量。如果您使用多台摄像机,创建一个空的游戏物体并添加KinectManager-component组件。
7 (开启)拖拽化身的游戏对象从层次结构的《阿凡达》控制器的KinectManager附些参数。否则他们将现场检测并自动添加到列表中启动。
8 使计算用户地图和地图显示用户的参数,如果你想看到user-depth地图在屏幕上。使“计算彩色地图”和“显示彩色地图”参数,如果你想看彩色摄像机图像在屏幕上。使显示骨架线的参数,如果你想看看Kinect跟踪user-depth地图上的骨架。
9 您可以使用的公共功能“KinectManager”和“InteractionManager”在你的脚本。作为示例,请参阅“GestureListener。cs”和“PresentationScript。cs KinectGesturesDemo-scene所用,GrabDropScript。cs“KinectInteractionDemo-scene所使用的或“KinectOverlayer。cs的KinectOverlayDemo-scene使用。
更多的阅读
以下操作教程也位于Unity-package资料文件夹的例子:
1。Howto-Use-Gestures-or-Create-Your-Own-Ones.pdf
2。Howto-Use-KinectManager-Across-Multiple-Scenes.pdf
【Unity/Kinect】Kinect入门——项目搭建的更多相关文章
- 004-Spring boot 快速入门-项目搭建与启动、SpringBootApplication、启动图标
一.官方地址 Spring:http://spring.io/ Spring Project:http://spring.io/projects Spring boot:https://project ...
- 002-Spring4 快速入门-项目搭建、基于注解的开发bean,Bean创建和装配、基于注解的开发bean,Bean初始化销毁、Bean装配,注解、Bean依赖注入
一.项目搭建 1.项目创建 eclipse→project explorer→new→Project→Maven Project 默认配置即可创建项目 2.spring配置 <dependenc ...
- eslint 入门项目搭建过程
github 地址 : https://github.com/gebin/eslint-demo 运行该项目 npm install npm start 访问 http://localhost:900 ...
- Vue -cli 入门 --项目搭建(一)
一. 安装node.js环境. 在node.js官网下载稳定版本(https://nodejs.org/en/) 下载完成后点击安装,安装过程很简单,一直next即可,安装完成会自动添加node及np ...
- 1 JPA入门----项目搭建以及CRUD
maven搭建JPA开发环境 1 依赖的maven pom文件 主要有hibernate-core.hibernate-entitymanager.javax-persistence.mysq ...
- Unity使用Kinect初级教程
准备 首先,你需要准备的东西 Windows 8以上系统的电脑,当然,配置不要太渣⊙︿⊙ Kinect for Windows开发套件 安装好Kinect for Windows SDK,这个应该属于 ...
- 架构师入门:搭建双注册中心的高可用Eureka架构(基于项目实战)
本文的案例是基于 架构师入门:搭建基本的Eureka架构(从项目里抽取) 改写的. 在上文里,我们演示Eureka客户端调用服务的整个流程,在这部分里我们将在架构上有所改进.大家可以想象下,在上文里案 ...
- Vue-cli入门(一)——项目搭建
Vue-cli入门(一)——项目搭建 前言: Vue-cli是一款基于vue的项目脚手架工具,其集成了webpack环境和主要的依赖,对于我们的项目搭建.开发.打包.维护管理等都是非常的方便. 主要内 ...
- 入门项目数字手写体识别:使用Keras完成CNN模型搭建(重要)
摘要: 本文是通过Keras实现深度学习入门项目——数字手写体识别,整个流程介绍比较详细,适合初学者上手实践. 对于图像分类任务而言,卷积神经网络(CNN)是目前最优的网络结构,没有之一.在面部识别. ...
随机推荐
- SpringBoot启动
一.启动时加载数据,就用CommandLineRunner 只需要将类实现CommandLineRunner,并且加上Component注解,还可以通过Order来控制启动顺序. @Component ...
- shell脚本条件判断
http://blog.csdn.net/ws_zll/article/details/7515310
- 在js或css后加?v= 版本号不让浏览器缓存
客户端会缓存css或js文件,改变版本号,客户端浏览器就会重新下载新的js或css文件,在js或css后加?v= 版本号的用法如下 代码如下: <span style="font-si ...
- Jersey框架
我从别人博客那儿搬点东西过来,原博请看最下面~看的顺序反了..应该先看JAX-RS整体的东西再看具体实现的Jersey例子的= =无数次改这个日记了不能忍...所以决定把JAX-RS系列的文章搬过来. ...
- 【Linux】撷取命令cut
什么是撷取命令啊?说穿了,就是将一段数据经过分析后,取出我们所想要的.或者是经由分析关键词,取得我们所想要的那一行! 不过,要注意的是,一般来说,撷取信息通常是针对『一行一行』来分析的,并不是整篇信息 ...
- 转:造HTTP请求Header实现“伪造来源IP”
构造 HTTP请求 Header 实现“伪造来源 IP ” 在阅读本文前,大家要有一个概念,在实现正常的TCP/IP 双方通信情况下,是无法伪造来源 IP 的,也就是说,在 TCP/IP 协议中,可以 ...
- js cookie库
顺手摘下来 /** * @desc 设置Cookie * @param {String} name * @param {String} value * @param {Number} expires ...
- activity 概念认知
工作流生命周期,5步 定义,工作流生命周期从流程定义开始. 发布,由开发人员打包各种资源,然后在系统管理中发布流程定义.包含流程定义文件.自定义表单.任务监听等. 执行,有具体的流程引擎如 activ ...
- python中if __name__ == '__main__'的说明
这个表示执行的是此代码所在的文件. 如果这个文件是作为模块被其他文件调用,不会执行这里面的代码. 只有执行这个文件时, if 里面的语句才会被执行. 这个功能经常可以用于进行测试. python中,当 ...
- Java:多线程,线程同步,synchronized关键字的用法(同步代码块、非静态同步方法、静态同步方法)
关于线程的同步,可以使用synchronized关键字,或者是使用JDK 5中提供的java.util.concurrent.lock包中的Lock对象.本文探讨synchronized关键字. sy ...