【问题标题】:Unity3D integration with UIViewUnity3D 与 UIView 的集成
【发布时间】:2011-12-01 03:37:07
【问题描述】:

如果此问题重复,请纠正我。 刚接触Unity3D,想问一下是否可以在其他UIView之上集成Unity3D?

【问题讨论】:

  • 我已经做到了,并创建了一个包含教程和可下载项目的存储库。我在这里写了一个答案和可下载的项目stackoverflow.com/questions/34714106/…
  • 你可以,但一般来说,这是一个彻头彻尾的痛苦,而且不值得。老实说,我会忘记它。使用 Unity 制作简单有趣的视频游戏,就这样吧。

标签: iphone ios uiview unity3d


【解决方案1】:

我认为这是不可能的,因为生成的 AppController.mm 充当UIApplicationDelegate。即使你设法让它工作,听起来你从长远来看不会有乐趣。 Unity3D 的主要更新可能会改变一些内部结构。

但反过来,即从 Unity3D 调用 Obj-C 代码并显示任意 UIView 肯定可以正常工作。请参阅How to use an xcode game on unity3d,尤其是Clever Martian's Blog - An Experiment with iPhone Native UI and Unity 3 Pro

【讨论】:

【解决方案2】:

也许可以,但反过来要容易得多。使用原生工具包:

http://u3d.as/content/prime31/native-toolkit-unity-to-i-os-bridge/1vj

有了这个,你可以在你的 Unity3D 应用上调出 UIViews。它工作得很好并且非常易于使用。我认为,这基本上是与 Kay 的答案相关的博客文章中描述的即插即用版本。

【讨论】:

  • 感谢您的提醒。我想要实现的是增强现实游戏。以你的方式,是否有可能在 UIView 之上有一个半透明的对象?谢谢
  • 否 -- 对于增强现实,请使用 Qualcomm 的 ARSDK。这是惊人的和免费的。或者,您可以从 Prime31 获得“增强现实”插件,它基本上创建了一个纹理,它将相机输出复制到。您可以在本机插件中添加代码,以在您想要的框架上运行任何本机 iOS AR 代码。但这是一个巨大的痛苦——使用 Qualcomm AR SDK。
  • 该插件似乎不再分发或支持。
【解决方案3】:

是的。

此线程详细介绍: http://forum.unity3d.com/threads/unity-appcontroller-subclassing.191971/

一位 Unity 开发人员甚至发布了示例代码。不是如何专门将 Unity 放在 UIView 上,而是如何包含 Unity AppController 以最终完成您想要的任何事情。

几年来,我一直在维护混合 Unity CocoaTouch 应用程序。它曾经是一个完整的黑客。现在 Unity 根据该线程中概述的内容对其进行了边际支持。但保持它是一件苦差事。 iOS 和 Unity 在每个版本中都会略有变化,因此您必须将 unity 重新集成到 iOS 应用程序中,每个版本都会略有不同。有时会出现奇怪的问题,我花了好几天才解决。根据经验,我个人会避免为任何严肃且高度可预测的事情使用 Unity 和 CocoaTouch 混合应用程序,直到它们变得更正式一些。最好在手册中有关于它的官方文档。不只是让其中一位开发人员发布代码示例和论坛。

【讨论】:

    【解决方案4】:

    由于没有使用全新 Unity 5(带有 64 位 IL2CPP 后端)和 Vuforia 4.x 管理此问题的指南 - 我决定在一个简短的教程中写下我的经验。

    http://www.makethegame.net/unity/add-unity3d-to-native-ios-app-with-unity-5-and-vuforia-4-x/

    希望它对某人有所帮助,因为这是一项非常糟糕的任务。

    【讨论】:

      猜你喜欢
      • 2011-12-06
      • 1970-01-01
      • 2016-04-10
      • 2011-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多