我的 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/