Unity中的Kinect游戏:如何删除背景

时间:2017-06-13 05:21:22

标签: unity3d background null unity5 kinect

我一直在努力制作一款使用Xbox One Kinect(V2)的Unity游戏。

我按照本教程中的说明操作: http://www.imaginativeuniversal.com/blog/2015/03/27/unity-5-and-kinect-2-integration/

此zip文件中有两个示例场景:(1)KinectView和(2)GreenScreen。

当我运行第一个样本(KinectView)时,图像看起来变形,就像下面屏幕截图的右侧部分一样:

enter image description here

当我运行第二个样本(GreenScreen场景)时,我得到一个Null帧错误:

enter image description here

现在我并不关心第一个场景(KinectView)中的扭曲问题。我关心第二个场景(GreenScreen)中的Background Removal功能。我只需要看到自己剪裁自定义背景。

任何人都可以帮我弄清楚如何解决这个NULL MSFR Frame问题吗?

我已经上传了压缩项目,以防有人感兴趣: https://www.sendspace.com/file/j2ftqz

非常感谢。

更新

我一直在弄乱Inspector中的一些Shader选项,并注意到除DX11 \ GreenScreenShader之外所有着色器选项都有效。其中一些看起来像普通的视频捕捉;其他更好的点亮(添加剂/乘法/α混合/等...)。

为什么DX \ GreenScreenShader选项是唯一不起作用的选项,而是仅显示粉红色方块。

下面的截图。

enter image description here

1 个答案:

答案 0 :(得分:0)

在您喜欢的文本编辑器上打开相关着色器并更改以下两行:

1)第15行。从Texture2D _MainTex;UNITY_DECLARE_TEX2D(_MainTex);

2)第59行。从o = _MainTex.Sample(SampleType, i.tex);o = UNITY_SAMPLE_TEX2D( _MainTex, i.tex );

如上所示更新着色器将解决您描述的问题。

二级参考/来源:https://www.elastic.co/guide/en/elasticsearch/reference/2.4/multi-fields.html