之前介绍了什么是 OpenGL ES ,OpenGL ES 管道的概念,什么是EGL,Android中OpenGL ES的开发包以及GLSurfaceView,OpenGL ES所支持的基本几何图形:点,线,面,已及如何使用这些基本几何通过构成较复杂的图像(20面体)。
Android OpenGL ES(一):关于OpenGL ES
Android OpenGL ES(二):OpenGL ES管道(Pipeline)
Android OpenGL ES(三):OpenGL ES API 命名习惯
Android OpenGL ES(五):GLSurfaceView
Android OpenGL ES(六):创建实例应用OpenGLDemos程序框架
Android OpenGL ES(九):绘制线段Line Segment
Android OpenGL ES(十):绘制三角形Triangle
Android OpenGL ES(十一):绘制一个20面体
但到目前为止还只是绘制2D图形,而忽略了一些重要的概念,3D坐标系,和3D坐标变换,在介绍OpenGL ES Demo程序框架时,创建一个OpenGLRenderer 实现 GLSurfaceView.Renderer接口
public void onSurfaceChanged(GL10 gl, int width, int height) {
// Sets the current view port to the new size.
gl.glViewport(0, 0, width, height);
// Select the projection matrix
gl.glMatrixMode(GL10.GL_PROJECTION);
// Reset the projection matrix
gl.glLoadIdentity();
// Calculate the aspect ratio of the window
GLU.gluPerspective(gl, 45.0f,
(float) width / (float) height,
0.1f, 100.0f);
// Select the modelview matrix
gl.glMatrixMode(GL10.GL_MODELVIEW);
// Reset the modelview matrix
gl.glLoadIdentity();
}
}
我们忽略了对glViewport,glMatrixMode,gluPerspective以及20面体时glLoadIdentity,glTranslatef,glRotatef等方法的介绍,这些都涉及到如何来为3D图形构建模型,在下面的几篇将详细介绍OpenGL ES的坐标系和坐标变换已经如何进行3D建模。
本文详细阐述了OpenGLES在三维坐标系与坐标变换方面的核心概念,包括如何构建3D模型,并通过实例展示了如何利用OpenGLES绘制复杂的三维图形。文章深入探讨了关键方法如glViewport、glMatrixMode、gluPerspective及其应用,同时指导读者如何在实践中运用这些知识,构建出完整的OpenGLDemos程序框架。
:阶段小结&spm=1001.2101.3001.5002&articleId=7303097&d=1&t=3&u=5192089da3f346a38693f0bc3cd58d86)
6万+

被折叠的 条评论
为什么被折叠?



