【问题标题】:Embed Unreal Engine 4 project into another app将 Unreal Engine 4 项目嵌入到另一个应用程序中
【发布时间】:2021-05-16 14:14:02
【问题描述】:

我一直在尝试进行概念验证 (POC),我可以将 UE4 项目嵌入到现有应用程序中(在我的例子中是 NativeScript),但这也可以很容易地应用于 Kotlin 或 ReactNative。

在概念验证中,通过遵循 FPS 的蓝图和 C++ 教程,我能够非常轻松地在我的 iPhone 上运行从 UE4 启动的项目。然而,我的 POC 的下一阶段需要我将 FPS 嵌入到现有的 NativeScript 应用程序中,这个应用程序将在 POC 中管理平台的根菜单、聊天和存储方面。

我遇到的困难是我找不到如何与从蓝图教程生成的 xcode 项目进行交互,而 C++ 教程生成了一个 xcode 项目,我不确定我需要包装的实际根目录在哪里.

以前有没有人看到过这样做的项目,如果有的话,有什么博客或指导可以指点我吗?我一直在谷歌搜索并四处寻找几个星期,并陷入了死胡同。我从 2020 年 4 月在这里找到了一个 feedback post,它指的是 2020 年 1 月的 a post,它谈到了 Unity 如何嵌入到其他应用程序中,另外还有一个来自 2014 here 的问题。但除此之外,这是一条死胡同。

【问题讨论】:

  • 可以分享一下生成的Xcode工程文件树吗?
  • 添加了@florian,如果您愿意,我也可以展开任何文件夹。
  • @zmanc 你能弄明白吗?我正在尝试类似的东西,如果您能指出一些事情,那将非常有帮助,谢谢
  • @ShivamPal,我最终只是搁置了它,直到其他人能够让它继续下去。如果您有任何运气,请回复,以便我可以复制您。

标签: ios nativescript unreal-engine4


【解决方案1】:

略有不同的方法

免责声明:我不是 UE4 开发人员。因看到无法忽视的悬而未决的赏金而被指控有罪。所以我开始思考和寻找——我发现了一些可以满足你需求的东西。输入pixelstreaming

Pixelstreaming 是一项测试版功能,主要用于将游戏嵌入浏览器。这在发生 GPU 大量计算的服务器和播放器可以与内容交互的浏览器之间打开了双向通信 - 鼠标点击和其他事件被发送回服务器。显然它允许一些额外的整洁的东西,但这与手头的问题无关。

由于您想将 Unreal 应用程序嵌入到您的 NativeScript 工具中(如果我理解正确的话,是某种菜单),您可以将您的应用程序分为两个独立的部分:

  • 其中一部分将运行服务器
  • 第二部分将通过像素流处理叠加层

这减少了将 UE4 嵌入应用程序的问题(可能更容易)将浏览器嵌入应用程序的问题。 (或者,如果您的应用程序是基于浏览器的 - 瞧,问题解决了。)
如果您不想处理远程通信,只需在本地主机上运行服务器端即可。(具有节省带宽的良好副作用。) 或者,如果您喜欢冒险,您可以在应用程序端编写自己的 WebRTC 支持,以完全绕过对浏览器的需求。不过,这可能不值得。

旁注:您提供的第一个链接是功能请求,它暗示了 UE4 不支持嵌入这一不幸的事实。那里的一个人说了类似“Unity 可以做到这一点,如果 UE4 也能做到这一点,那就太好了”这一事实进一步强化了这一点。

另一种方法:

您可以嵌入并使用虚拟显示器将 UE4 部件插入到您的控制器中 - 您基本上是在欺骗 UE4,使其认为所需的显示设备是您应用程序中的画布。

This 线程提出了类似的方法:

一般来说,像这样连接两个库的方法是通过依赖于平台的窗口句柄,例如Windows 下的 HWND。如果您找到将渲染目标绑定到 HWND 的任何方法,请检查 UE api。然后你可以在 wxWidgets 中创建一个 wxWindow 并告诉 UE 渲染到那个窗口中。这将是第一步。

我不确定我列出的任何内容是否会有很大帮助,但是嘿,至少我尝试过 :-)。祝你的游戏好运。

同时,作者建议:

扭转问题:

使用 UE4 slate 框架和 online 子系统。您可以使用前者直接在 UE4 中创建您需要的菜单,然后使用后者链接到您希望在 UE4 之外拥有的逻辑。然而,这不是你要求的,所以我只是为了完整起见列出它。

【讨论】:

    猜你喜欢
    • 2016-02-14
    • 2010-09-23
    • 2019-03-07
    • 2018-05-03
    • 1970-01-01
    • 2017-03-15
    • 2015-04-05
    • 1970-01-01
    • 2015-02-15
    相关资源
    最近更新 更多