【Unity】Kinect屏幕显示环境背景及人体投影
2016-11-15 00:22
1031 查看
最近学习用Unity做些体感小游戏,使用Kinect的Unity插件,结合一些官方Demo学习(网上资源用Unity做的较少,蛋疼)。插件及其Demo就在Unity商店里搜Kinect即可找到,其中下图这个包里面包含了大量实用场景和局部功能的Demo,绝对是入门神器!
非常感谢下面这位大大的无私奉献!
http://www.manew.com/thread-50097-1-1.html
需求:屏幕中显示房间环境作为背景,显示人物的投影图像(彩色或者单色)。
做法:从Kinect设备读取数据,然后给UGUI控件显示。
写一个脚本挂到Canvas身上:
注意点:
通过该方式获取到的图片是上下颠倒的,还需要将该图片控件的RectTransform组件里的Scale设为-1。
勾选了Compute Color Map则人体投影为彩色图,没有勾选则为单色图。
想要调整人影的透明度,需要给该图片控件添加Canvas Group组件,调整Alpha值。
非常感谢下面这位大大的无私奉献!
http://www.manew.com/thread-50097-1-1.html
需求:屏幕中显示房间环境作为背景,显示人物的投影图像(彩色或者单色)。
做法:从Kinect设备读取数据,然后给UGUI控件显示。
写一个脚本挂到Canvas身上:
using UnityEngine; using System.Collections; using UnityEngine.UI; /// <summary> /// 从Kinect获取数据。 /// </summary> public class GetDataFromKinect : MonoBehaviour { public RawImage image; // 空白图片,用于显示 // Use this for initialization void Start () { } // Update is called once per frame void Update () { // 判断设备是否初始化完成。最开始的几帧没有完成,所以需要在Update中去每帧检测。 bool isInit = KinectManager.IsKinectInitialized (); if (isInit) { if (image.texture == null) { // 从设备获取彩色数据,需要勾选Compute Color Map。 Texture2D colorMap = KinectManager.Instance.GetUsersClrTex (); // 从设备获取深度数据,需要勾选Compute User Map。 // Texture2D userMap = KinectManager.Instance.GetUsersLblTex (); // 把彩色数据设置给控件显示 image.texture = colorMap ; } } } }
注意点:
通过该方式获取到的图片是上下颠倒的,还需要将该图片控件的RectTransform组件里的Scale设为-1。
勾选了Compute Color Map则人体投影为彩色图,没有勾选则为单色图。
想要调整人影的透明度,需要给该图片控件添加Canvas Group组件,调整Alpha值。
相关文章推荐
- 桌面图标 背景 阴影 问题 + 屏幕 显示 旋转 斜看 问题
- 设置显示dialog时变暗的屏幕背景样式
- 只将unity的UI控件添加到iOS视图层上,不显示unity原生的背景(一)
- 如何理解为body设置背景时整个屏幕都显示
- unity中使用kinect自带抠图显示不出来的问题
- VC将BMP图片显示在屏幕上(用图片作背景)
- IPhone 手机屏幕 不显示了。 只有一个背景界面。其他都不显示。怎么回事。
- PopupWindow屏幕中部显示背景变暗
- 【Kinect】配置Kinect2.0+Unity5.6.0开发环境
- 在DOS环境下添加背景音乐、改变背景颜色、冻结屏幕和调用系统时间
- [Unity实战]屏幕追踪显示目标
- Kinect2.0+Unity之环境搭建
- Android 在mac上显示手机屏幕 MAC 投影 安卓手机
- Unity 安卓环境下保持设备屏幕唤醒
- Windows 8.1开始屏幕与桌面用一张壁纸(开始屏幕显示桌面背景)
- 解决 Mac OS X Retina 屏幕显示环境下 jEdit 字体模糊的方法
- 关于安卓alertdialog你能用到的都在这里了(进出动画,显示位置,背景,设置内容,是否可以点击其他地方消失,屏幕不变暗)
- ppt演示,怎么变看备注,变演示,而投影的屏幕上不显示备注?
- Kinect 2.0 高帧率 同分辨率采集RGB-D图像并保存,并显示人体骨架
- UIImageView 如何实现windows 桌面类似的背景壁纸屏幕(很小的图片会显示N多个)?