Tag: opengl es

为Android上的OpenGL获取最大纹理尺寸的function(可以在UI线程上运行)

我已经写了下面的函数来获取Android上的最大纹理大小。 该函数应该在UI线程上运行,并且不能假定已经设置了EGLContext。 它似乎在我的测试设备上工作,但我对OpenGl和Android都相当陌生,而且我对代码没有充分的信心。 我依靠反复试验和一些复制粘贴而没有完全理解的东西。 你看到有关代码的任何问题? 特别: 这是强大的? 我是否在不知不觉中做出了错误的假设? 我是否正确清理资源? 它可以变得更简单吗? 这里是代码(在Kotlin): private fun getGLMaxTextureSize():Int { // Get display. val display = EGL14.eglGetDisplay(0) // Choose config. val configSpec = intArrayOf(EGL14.EGL_NONE) val configs = arrayOfNulls(1) var num_config = IntArray(1) EGL14.eglChooseConfig(display, configSpec, 0, configs, 0,1, num_config, 0) // Create context. val attribs = intArrayOf(EGL14.EGL_CONTEXT_CLIENT_VERSION, 2, EGL10.EGL_NONE) val context […]

没有Java的Android Studio

我想使用Android Studio进行C ++ / OpenGL NDK项目,但是我不希望在我的电脑上安装Oracle的Java,因为这是一个安全风险。 反正有没有安装Java使用这个IDE?

将屏幕坐标转换为OpenGL坐标

我正在为Android创建一个骰子应用程序。 使用Kotlin,OpenGL-ES和jBullet。 我已经实施了骰子。 现在我需要创造墙壁,否则骰子会滚出屏幕。 因为屏幕可以有不同的长宽比,我试图用glUnProject来确定墙的位置,但我无法弄清楚。 我收到的坐标不正确。 gl.glViewport(0,0,width,height) //Reset The Current Viewport gl.glMatrixMode(GL10.GL_PROJECTION) //Select The Projection Matrix gl.glLoadIdentity() //Reset The Projection Matrix //Calculate The Aspect Ratio Of The Window GLU.gluPerspective(gl, 35.0f, width.toFloat() / height.toFloat(), 0.1f, 100.0f) GLU.gluLookAt(gl, 0.0f, 30.0f, 0.0f, //Pos 0.0f, 0.0f, 0.0f, //Look at 0.0f, 0.0f, 1.0f //Up ); gl.glMatrixMode(GL10.GL_MODELVIEW) //Select The Modelview Matrix […]