我可以在Android NDK上使用glu

Dae*_*all 18 android opengl-es android-ndk glu

我似乎无法在我的Android NDK项目中包含glu.h.

我正在尝试将现有的C++代码移植到NDK,它在一些地方使用glu(特别是gluErrorString).

OpenGLES没有胶水吗?

我有可以使用的端口吗?

如果不是,我可以删除对类似gluPerspective等事情的调用,但我该怎么办gluErrorString

Ido*_*lon 15

OpenGL ES没有胶水吗?

不,它没有.看看这个:Platform OpenGL包含集合.在Android下,只有以下标题:

OpenGL ES 1.1:

#include <GLES/gl.h>
#include <GLES/glext.h>
Run Code Online (Sandbox Code Playgroud)

OpenGL ES 2.0:

#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>
Run Code Online (Sandbox Code Playgroud)

我有可以使用的端口吗?

是的,有一个GLU的部分端口用于Android - GLU ES(它支持gluErrorString,gluPerspective以及许多其他功能):

用于OpenGL ES 1.x(CM - Common profile)及更高版本的GLU 1.3 partitial port(仅限libutil和libtess组件).

此端口支持:

  • 二次曲线:gluNewQuadric(),gluDeleteQuadric(),gluQuadricCallback(),gluQuadricNormals(),gluQuadricTexture(),gluQuadricOrientation(),gluQuadricDrawStyle(),gluCylinder(),gluDisk(),gluPartialDisk(),gluSphere().
  • 注册表:gluGetString(),gluCheckExtension(), gluErrorString().
  • 投影矩阵操作:gluOrtho2D(),gluPerspective(),gluLookAt(),gluProject(),gluUnProject(),gluUnProject4(),gluPickMatrix().2D Mipmaps:gluScaleImage(),gluBuild2DMipmapLevels(),gluBuild2DMipmaps().
  • Tesselation:gluBeginPolygon(),gluDeleteTess(),gluEndPolygon(),gluGetTessProperty(),gluNewTess(),gluNextContour(),gluTessBeginContour(),gluTessBeginPolygon(),gluTessCallback(),gluTessEndContour(),gluTessEndPolygon(),gluTessNormal(), gluTessProperty(),gluTessVertex().

  • 谢谢,这似乎是一个良好的开端.不是为开箱即用的Android构建,但我应该能够提取我需要的东西.它稍微让我感到恼火的是,似乎有一个用于android java但不是android ndk的glu. (5认同)