为Unity写LLAPI底层插件时,64位编译出来的插件在编辑器里使用完全没有问题,而发布时需要32位的版本。本以为只需再编译一次即可,然而实际上无法运行。
查阅资料后,得知在32位编译时,需要新建一个.def文件,并规定Unity的接口符号没有多余的字符,否则在32位环境极有可能Unity无法调用插件内UnityPluginLoad与Unload两个函数,由此便发生了错误。
只需要添加:
Source.def
LIBRARY
EXPORTS
UnityPluginLoad
UnityPluginUnload
然后重新编译即可正常使用32位版本。