【问题标题】:Unity3d iOS c++ native library plugin. How to?Unity3d iOS c++ 原生库插件。如何?
【发布时间】:2014-03-21 18:00:28
【问题描述】:

我在我的游戏中使用this c++ 粒子物理库。到目前为止,我让它在 android 和 windows 上统一工作。
我现在正在考虑让它在 iOS 上运行,这似乎是一项艰巨的任务。 该库是 Box2D 的超集,因此它是一个相当大的复杂库。 这是我解决这个问题的想法,我希望有经验的人能说出他们认为这是否可行,或者如果没有建议更好的方法。

我的想法是.. 使用 Unitys 的“自动插件集成”,将 .cpp 和 .h 源文件添加到 Assets\Plugins\iOS 文件夹,并将它们符号链接到 xcode 项目中(无论这意味着什么)
这里的问题是不支持子文件夹,所以我必须展平 Box2D 项目的目录结构并将所有内容放在一个文件夹中。我的想法是使用 python 脚本来执行此操作,该脚本将更改源代码中的所有包含语句,例如..

   #include <Box2D/Common/b2Settings.h>   

会改成..

   #include <b2Settings.h>  

这是否行不通的原因?

【问题讨论】:

  • 是什么阻止您实际执行 python 脚本并查看会发生什么?
  • 我一定会这样做的。我只是想在我浪费时间之前检查一下人们对它的看法,或者是否有更好的方法(来自以前在 iOS 中统一工作的本地 c++ 库的人)。我认为这个想法有点疯狂,我也在这里看到了报告(从 2013 年开始),在 unity 4 之后,iOS 的统一“自动插件集成”被打破了
  • 我认为你最关心的是性能,不管自动插件集成是否有效。看到这一点的最好方法是实际去做并分析它。如果它有效,表现良好并且完成了工作,那就不是疯了;)
  • @GuyeIncognito 你介意帮我弄清楚你在我的帖子上发现了什么吗? stackoverflow.com/questions/68272983/…

标签: c++ ios plugins unity3d


【解决方案1】:

好的,这个疯狂的想法真的奏效了! iphone 4 的性能很糟糕,但在 iphone 5 上绝对完美。我唯一遇到的另一个问题是我不得不转

   #include <Box2D/Common/b2Settings.h>

进入

   #include  "b2Settings.h"  

Xcode 不喜欢尖括号。 这也无法在模拟器上构建,但可以在实际设备上运行

【讨论】:

    猜你喜欢
    • 2013-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-19
    • 2019-03-17
    • 1970-01-01
    • 2020-02-13
    相关资源
    最近更新 更多