使用事件后的 KinectSDK 轮询
本文关键字:KinectSDK 轮询 事件 | 更新日期: 2023-09-27 17:55:24
我正在制作的 Kinect 应用程序有两个部分。有一个WPF菜单,最终将用户定向到XNA游戏。
问题是我正在使用的WPF控件(如KinectRegion)正在将事件侦听器添加到KinectSensor对象上的AllFramesReady等内容中。当我尝试在我的 XNA 游戏中轮询骨架数据时,我收到以下错误:
This API cannot be called when an event listener has been set
我的问题:如何重置 KinectSDK 中的所有内容,以便在启动 XNA 游戏时拥有一张白纸?或者至少,让它进入我可以成功轮询框架数据的状态。
我不知道 WPF 控件附加了什么方法来处理事件,因此我无法从事件中显式删除它们。
类似问题:获取彩色图像不在帧就绪事件中
不能一次使用事件处理程序和轮询方法。Kinect API 不支持这一点。更好的方法是将全局变量用于轮询方法,并在您想要的任何地方使用它。