java - 使用libGdx桌面端口作为Android GLES20的模拟器

标签 java android opengl-es libgdx emulation

我的 Android OpenGL-ES 2.0 项目甚至无法在 Android 模拟器(GPU 主机)或虚拟机(Androidx86.iso + VirtualBox)上运行,但在物理 Android 设备上没有问题。

那么,我可以使用 libGdx 桌面端口来模拟 Android GLES20,而不在我的 Android 项目中集成其他 libGdx 内容吗? 如果是,那么如何在没有 libGdx 框架的情况下从 android 的 RAW 文件夹加载着色器?!

除了libGdx,我找到了一个有效的wrapper 但如果我必须自己维护一个包装器,那么 NDK+GLUT 不是更快的选择吗?

最佳答案

你可以做类似的事情。 libgdx wiki 是这么说的:

Clearly there's no OpenGL ES implementation on the desktop useable via Java. Well, there is now. Libgdx emulates OpenGL ES via the standard OpenGL API on Windows and Linux. Nearly all features are supported such as fixed point math and so on. The only feature missing at the moment is support for fixed point vertex buffer objects and some minor getter methods.

Here这是如何将 libgdx 与 lwjgl 后端一起使用的教程。

Here这是着色器程序的初始化方式。

您可以从上面的链接中看到着色器是如何从资源加载的。

Here这就是 ShaderProgram 在幕后所做的事情。

您可以看到它调用了 gl 对象的一些函数,其中包含模拟 opengl es 2.0 的方法。

关于java - 使用libGdx桌面端口作为Android GLES20的模拟器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20470167/

相关文章:

android - 为什么 glReadPixels 返回意外的颜色格式值?

java - 使用 Browserstack 和 Selenium 访问 "click"或点击移动设备的方法

java - 如何从数据库访问代码中抽象出业务逻辑和对象定义?

android - 当字符串包含 "-"时无法删除 sqlite 中的特定行

java - 为什么我收到“属性值必须是常量”错误?

android - 如何使用 opengl es 在 android 中的屏幕周围移动特定纹理?

java - fragment 切换还是多个 Activity ?

java - 带有单选按钮问题的标签

android - 如何在 Android 应用程序中嵌入 PlaceAutocompleteFragment

ios - 渲染到纹理与渲染到 CAEAGLLayer 支持的 View ?