Android上的JOGL vs OpenGL ES API。赞成和反对;欺骗

Android上的JOGL vs OpenGL ES API。赞成和反对;欺骗,android,opengl-es,jogl,Android,Opengl Es,Jogl,我们正在尝试将我们的项目从PC版迁移到Android版。PC版本使用JOGL。 有人能解释一下在Android应用程序中使用JOGL而不是OpenGL ES API的主要优点吗 例如,JOGL在PC上的优点有: 理论上,你可以在任何平台上使用它 它或多或少地与AWT、Swing和SWT集成在一起 它也是一种包装器,所以理论上有一些抽象使OpenGL更容易使用 但我看不出在安卓系统中使用它的优点,以下是我认为的缺点: 这是另一个依赖项,APK大小将更大 一些同时影响JOGL和OpenGL ES的问

我们正在尝试将我们的项目从PC版迁移到Android版。PC版本使用JOGL。 有人能解释一下在Android应用程序中使用JOGL而不是OpenGL ES API的主要优点吗

例如,JOGL在PC上的优点有:

  • 理论上,你可以在任何平台上使用它
  • 它或多或少地与AWT、Swing和SWT集成在一起
  • 它也是一种包装器,所以理论上有一些抽象使OpenGL更容易使用
  • 但我看不出在安卓系统中使用它的优点,以下是我认为的缺点:

  • 这是另一个依赖项,APK大小将更大
  • 一些同时影响JOGL和OpenGL ES的问题将需要更多的解决方案 是时候精确定位和修复了
  • 这不是一个不需要花费时间的银弹 重构,因为在Android中,我们应该使用正确的模式 活动、服务等
  • JOGL拥有更少的教程和更小的OpenGL ES API社区 有

  • 那么在Android项目中使用它有什么意义呢?

    您只能在我们支持的平台上使用JOGL。我确认JOGL与AWT、Swing和SWT具有良好的互操作性(还没有与OpenJFX/JavaFX进行互操作,但当Oracle完成必要的工作时,我们将对此进行改进)。是的,有一些很好的抽象概念,但你忘记了很多事情:

    • JOGL有自己的AWT免费图像管理。它比ImageIO更好地支持JPEG,而且速度更快
    • 即使应用程序暂停并放在后台(当您按下“home”键时),也可以保留OpenGL上下文,它是内置的
    • 您可以在计算机上测试OpenGL ES代码,即使它不能取代在真实设备上的测试
    • 您可以在桌面和嵌入式环境中使用完全相同的OpenGL代码,特别是如果您已经使用了GL2ES2
    • 如果出现问题,你可以信赖我们,谷歌Play上已经有一些商业游戏
    我承认在Android下缺少关于JOGL的文档。很抱歉,我已经花了几个月的时间写了这篇文章,我更愿意把为JOGL Android使用做同样工作的任务留给更有经验的人


    编辑:很抱歉回复太晚,但我的OpenID有问题。请在我们的官方论坛上发布有关JOGL的问题。

    谢谢您的回答。我承认JOGL在Windows和Linux等平台下工作得很好,但我对教程中提到的APK和Actitylanchers有着直觉。不客气。JOGL也在OpenIndiana/Solaris和Mac OS X下工作。由于缺乏文档,在开始时让它们工作有点棘手,但它们可以工作。有一个基于Maven的工具可以帮助生成软件包,但我不知道如何使用它,jp4da:你应该在我们的IRC频道上向Sven、Xerxes和Mark寻求帮助,他们比我更了解Android。