unity3D C#调用C++代码(通过DLL链接库方式)

前言】:最近自己捣鼓数据手套,想用unity3D集成数据手套CyberGlove,开发一个数据手套可以控制的虚拟手交互场景。还没开始就遇到一个麻烦的问题,unity3D支持C#脚本,而数据手套CyberGlove只提供了静态链接库.lib和头文件.h作为开发的SDK。于是乎如何在unity3D中获取数据手套的各指关节角度成为一个麻烦事,经过多方查询资料,初步形成了以下方案。

方案】:分析unity3D中需要用到数据手套CyberGlove的那些API,将其提取出来进行封装,即在VS上建立DLL工程,然后定义新的函数,这些函数调用数据手套CyberGlove的API,接着将工程编译生成DLL。然后在unity3D通过调用该DLL中的函数,间接调用数据手套的原始API。借鉴网上C#调用C++ DLL库的方法,整个实现过程记录如下。

步骤

(1)提取unity3D需要调用数据手套API,如下:

#include <vhandtk/vhtBase.h>
1、获得手套的连接
vhtIOConn *gloveConn = vhtIOConn::getDefault(vhtIOConn::glove);
2、创建手套
vhtCyberGlove *glove = new vhtCyberGlove(gloveConn);
3、手套刷新
glove->update
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值