为 Ubuntu 软件中心开发 OpenGLES2 应用程序

Bra*_*ram 5 software-center opengl application-development

我有一款适用于 iOS 和 Android 的游戏,现在我想将其移植到 Ubuntu。我计划将它与 Ubuntu 软件中心一起分发。最好通过应用内购买免费。

我的代码库目前基于 OpenGL ES2 并用 C++ 编写。我可以重写为 OpenGL,但必须拥有可编程着色器。固定管道 OpenGL 是不够的。

是否有一个功能可以让您在 Ubuntu 软件中心指定 OpenGL 要求?我想确保只有具有兼容硬件的 Ubuntu 用户才能下载我的游戏。

我可以使用任何 API 来获取合适的 OpenGL 上下文,还是我只希望为此使用 glx?还是必须使用 GTK?

Bra*_*ram 1

好的,我得到以下发现:

您可以从常规 OpenGL 驱动程序请求 OpenGL-ES2 上下文,只要 OpenGL 供应商支持即可。

我已经确认这适用于:

  • 英特尔集成显卡驱动
  • nVidia 专有驱动程序
  • Radeon 开源驱动程序

它不适用于:

  • AMD/ATI 专有 fglrx 驱动程序

要检查的扩展名是 GLX_EXT_create_context_es2_profile。如果您使用 GLFW 库,您可以通过执行以下操作来请求它:

    glfwWindowHint( GLFW_CLIENT_API, GLFW_OPENGL_ES_API );
    glfwWindowHint( GLFW_CONTEXT_VERSION_MAJOR, 2 );
Run Code Online (Sandbox Code Playgroud)