一段时间以来,我一直在尝试弄清楚如何构建 Unity 用来连接 ARToolkit 5.3.1 的 ARWrapper 库。我可以使用 ARToolkit 源构建 ARWrapper 包,但我不知道如何从包转移到特定于平台的库(iOS 和 Android)。在 Unity 的 ARToolkit 包中,提供了以下我需要构建的 Assets :
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)。
有人可以帮助我了解如何从包移动到特定于平台的库,如上图所示,在包的 Assets 文件夹中。更具体地说,我希望能够构建 libARWrapper.so 和 libARWrapper.a
最佳答案
libARWrapper 是每个平台的 ARToolKit 的一部分。
- 您已经为 OS X 构建了它,大概是使用 ARToolKit for OS X SDK。
- 要为 iOS 构建它,您需要下载 ARToolKit for iOS SDK 并在 Xcode 中构建,然后将 libARWrapper.a 从库复制到您的 Unity 项目中。
- 对于 Android,再次下载适用于 Android SDK 的 ARToolKit,打开终端窗口,
cd android
然后是./build.sh
。最后,将 libs 目录中的 libARWrapper.so 复制到您的 Unity 项目中。 - 对于 Windows Win32,下载 ARToolKit for Windows SDK,进行构建,将 ARWrapper.dll 从 bin 目录复制到您的 Unity 项目中。
您提到的其他部分通常可以在每个平台上重建。对于 Android,您可能想要重建的另一个关键组件是 UnityARWrapper.jar,其源代码包含在 ARToolKit for Unity SDK 中。
关于android - 为 Unity 3D 构建 iOS 和 Android ARToolkit 包装器 (ARWrapper) 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35221740/