我已经尝试了一段时间来弄清楚如何构建用于与ARToolkit 5.3.1接口的ARWrapper库。我可以使用ARToolkit源构建ARWrapper包,但我不知道如何从包转移到平台特定的库(iOS和Android)。在Unity的ARToolkit包中,我需要提供以下资源:
Android:AndroidManifest.xml,AndroidManifest.xml.meta,BT200Ctrl.jar, BT200Ctrl.jar.meta,libARWrapper.so,libARWrapper.so.meta, libc ++ _ shared.so,libc ++ _ shared.so.meta,res:res.meta,UnityARPlayer.jar, UnityARPlayer.jar.meta
iOS:ARToolKitUtilities.m,ARToolKitUtilities.m.meta,libARWrapper.a, libARWrapper.a.meta,libjpeg.a,libjpeg.a.meta
但到目前为止使用ARToolkit源代码我只能构建一个bundle文件(ARWrapper.bundle)。
有人可以帮我理解如何从捆绑包移动到平台特定的库,如上图所示,在包的资产文件夹中。更具体地说,我希望能够构建libARWrapper.so和libARWrapper.a
答案 0 :(得分:2)
libARWrapper是每个平台的ARToolKit的一部分。
cd android
,然后./build.sh
。最后,将libs目录中的libARWrapper.so复制到Unity项目中。您提到的其他部分通常可以在每个平台上重建。对于Android,您可能想要重建的另一个关键组件是UnityARWrapper.jar,其源代码包含在ARToolKit for Unity SDK中。
答案 1 :(得分:0)
如果你有好的工具链,我想你应该使用CMake http://www.vtk.org/Wiki/CMake_Cross_Compiling
基本上我的想法是获取源代码,创建一个构建目录然后:
cd build
~/src/build$ cmake -DCMAKE_TOOLCHAIN_FILE=~/Toolchain.cmake ..