20200408更:
微软官方Unity+AK工程实例:sample_unity_bodytracking
详细配置步骤在根目录README.md文档中:
- 使用Unity编辑器打开该工程
- 确保Unity编辑器指定的IDE为Visual Studio(Unity中Edit>Preferences>External Tools>External Script Editor指定为VS)
- 在Unity编辑器环境下,双击某脚本默认使用VS打开该项目
- VS中:Tools->NuGet Package Manager-> Package Manager Console
- 然后在VS底部命令窗口内输入指令,该指令会将肢体跟踪库放进工程下的Packages文件夹下,具体版本视情况修改:
- Install-Package Microsoft.Azure.Kinect.BodyTracking -Version 1.0.0
- 打开Unity工程文件根目录,双击执行MoveLibraryFile.bat,该步骤会将相关库添加到工程Plugins目录下
- 最后,Unity编辑器中打开场景Scenes/Kinect4AzureSampleScene,连接AK设备,运行测试
准备工作请看上篇 Azure Kinect DK 首次配置流程
微软Azure Kinect相关SDK目前(2019.10.18)默认开放支持C++语言,不支持C#,但是项目要使用Unity,尴了个尬。
官方SDK源码:Azure-Kinect-Sensor-SDK Azure-Kinect-Samples
翻遍官网文档后,第一时间翻阅GITHUB,寻求大神救火,所幸找到 K4A.Net 。此时回头检查下Azure Kinect SDK安装目录tool文件夹下的几个文件: k4a.dll,k4arecorder.exe,k4aviewer.exe 均以“k4a”开头(k4a可以理解为Kinect For Azure)。下载,解压,一气呵成。下图中红框1包含核心库和示例;红框2包含所有源码。
【测试运行】
1.保持AK设备正常连接电源,连接电脑。
2.使用Unity3D编辑器打开工程文件:\k4a.net-v1.3.0\samples\unity\(由红框1解压出)然后进入自带\Scenes\Scene场景。
3.此时开启运行。
【异常修复】
1.如若启动运行时,相机画面正常,但是日志报出无法开启“人体跟踪”功能异常;可尝试重启Unity,重启系统。
2.如果还未解决,有效解决方案如下:
a.移除\Assets\Plugins\K4AdotNet\目录下含有“K4AdotNet”字样的4个文件。
b.将\k4a.net-1.3.0\k4a.net-1.3.0\K4AdotNet这个文件夹(由红框2解压出)复制到Unity工程assets目录下。
c.再次运行,正常。
3.这个异常在写本篇博客时,并未能重现出来,暂未追踪原因;所以此异常首次出现时,先尝试重启软件重启系统。
【结束】