将 Unity3D 用作带有 OpenGL 应用程序的 Win32 c++ 的 GUI

Posted

技术标签:

【中文标题】将 Unity3D 用作带有 OpenGL 应用程序的 Win32 c++ 的 GUI【英文标题】:Use Unity3D as GUI to a Win32 c++ with OpenGL app 【发布时间】:2016-08-25 21:43:44 【问题描述】:

我有一个使用大量 OpenGL 代码的 C++ 编写的 Win32 应用程序。 现在我们使用 OpenGL 代码渲染所有的 GUI,但我认为使用 Unity3D 作为界面层对我们来说真的很简单:

是否可以在 Unity3D 应用程序下(在 Windows 中)使用我们自己的 c++ 类和 OpenGL?

【问题讨论】:

【参考方案1】:

您应该考虑一个替代的 UI 库,它能够直接渲染到 OpenGL 纹理,而不会增加与整个 Unity 系统集成的负担。

我玩过QML、CEGUI 或libRocket。

QML 是这三者中设计得最好的,虽然它对直接渲染到 OpenGL 纹理的支持相对较新,因此存在一些小问题,但总的来说它很容易使用并且可以绕过限制。

【讨论】:

以上是关于将 Unity3D 用作带有 OpenGL 应用程序的 Win32 c++ 的 GUI的主要内容,如果未能解决你的问题,请参考以下文章

C++ 为 Windows 创建屏幕保护程序

Unity3D 协程 Coroutine

OpenGL:如何裁剪 2D 区域以避免将带有 GlutBitmap 的文本打印出该区域?

在 OpenGL 中渲染 QWidget

带有 OpenGL 的 Qt MDI 应用程序:如何获取有效的屏幕截图?

带有 GLFW 和 GLEW 的 OpenGL 应用程序崩溃