kinect使用手册

1、安装KinectSDK-v1.0-beta2-x64.msi,这个是64位机子的。可以视自己的机子情况而定。

2、编译sample中的SkeletalViewer项目(我编译的是c++,如果你比较熟悉c#可以编译c#版本的):

A:环境配置==在引用文件中添加安装SDK时的安装目录中的inc,在库文件中添加SDK的lib/amd64,然后在链接器->输入->附加依赖项中添加MSRKinectNUI.lib。直接编译运行就可以了,但是我的在编译的时候出现

1>NuiImpl.obj : error LNK2019: 无法解析的外部符号 __imp__MSR_NuiCreateInstanceByName,该符号在函数 "public: long __thiscall CSkeletalViewerApp::Nui_Init(wchar_t *)" (?Nui_Init@CSkeletalViewerApp@@QAEJPA_W@Z) 中被引用
1>NuiImpl.obj : error LNK2019: 无法解析的外部符号 __imp__MSR_NuiCreateInstanceByIndex,该符号在函数 "public: long __thiscall CSkeletalViewerApp::Nui_Init(int)" (?Nui_Init@CSkeletalViewerApp@@QAEJH@Z) 中被引用
1>SkeletalViewer.obj : error LNK2019: 无法解析的外部符号 __imp__MSR_NuiSetDeviceStatusCallback,该符号在函数 _wWinMain@16 中被引用
1>SkeletalViewer.obj : error LNK2019: 无法解析的外部符号 __imp__MSR_NUIGetDeviceCount,该符号在函数 "private: void __thiscall CSkeletalViewerApp::UpdateComboBox(void)" (?UpdateComboBox@CSkeletalViewerApp@@AAEXXZ) 中被引用


后来调试了一下发现要用lib/x86的MSRKinectNUI.lib才可以,具体原因不是很清楚。编译通过……


B:运行==出现错误如下,经过查找资料,原因是我的机子没有独立显卡(泪奔)。

kinect使用手册_第1张图片

解决办法,找到DrawDevice.cpp中的代码

    hr = m_pD3D->CreateDevice(
        D3DADAPTER_DEFAULT,
        D3DDEVTYPE_HAL,
        hwnd,
        D3DCREATE_SOFTWARE_VERTEXPROCESSING | D3DCREATE_FPU_PRESERVE,
        &pp,
        &m_pDevice
        );

将其中的D3DCREATE_HARDWARE_VERTEXPROCESSING改为D3DCREATE_SOFTWARE_VERTEXPROCESSING就可以成功运行了


 
 

你可能感兴趣的:(c,C#)