unity-调用动态库dll-windows篇
- 其实就是c#调用dll
- Android篇
1、生成64位的dll
- 用vs新建个工程,随便写个函数
NaviteCode.hNaviteCode.cpp1
2
3
4
5
6
7
8
9
10
11
extern "C" {
EXPORT_DLL int MyAddFunc(int _a, int _b);
}extern “C” 就不用说明了吧,指定c编译器编译,后面打Android的so库也是用相同的代码1
2
3
4
5
6
7
8
extern "C" {
int MyAddFunc(int _a, int _b)
{
return _a + _b;
}
}
修改vs导出配置,导出为64位Release的dll(应为用的是unity是64位的)
生成,就出来了这个 NativeCode.dll
2、拷贝 NativeCode.dll 到unity工程中
unity存放动态库是由规则的不同平台放置的目录不同,官网传送门,点我
所以按照规则,把 NativeCode.dll 放入 Assets\Plugins\x86_64 目录中
3、c#中调用一下,随便create个c#挂在场景的对象中
1 | using UnityEngine; |
done