OpenGL ES (一)绘制3D步骤整理

zjk

OpenGL ES 绘制3D步骤其实挺简单,看一下代码整理一下就很明了的,但是书上讲的都很乱,特整理一下

1.创建GLSurfaceView组件(与activity相关的类),用于显示OpenGL绘制的图形  

2.为GLSurfaceView组件创建GLSurfaceView.renderer实例

3.调用glsurfaceview组件的setRenderer()方法指定Renderer对象,该renderer对象将完成glsurfaceview的3D绘制

大步骤就分为以上三步,下面介绍介绍第二部

2.1创建各种数组,顶点,颜色,三角形或者直线顶点,还要转换成OpenGL的数组形式

2.2构造函数中将数组转换一下

2.3实现接口的三个函数

2.3.1void onSurfaceCreated(GL10 gl, EGLConfig config)  当执行第一步时调用次函数

2.3.2void onSurfaceChanged(GL10 gl, int width, int height) 当glsurfaceview大小改变时回调

2.3.3void onDrawFrame(GL10 gl)   次函数是关键,render对象会调用次方法绘制 一直在此函数循环,下面几种讲解

2.3.3.1gl.glEnableClientState(GL10.GL_VERTEX_ARRAY); 启用顶点坐标数据

2.3.3.2//gl.glEnableClientState(GL10.GL_COLOR_ARRAY) 启用顶点颜色数据

2.3.3.3gl.glVertexPointer(3, GL10.GL_FLOAT, 0, lineVerticesBuffer);   设置顶点位置数据

2.3.3.4gl.glColor4f(1.0f, 0.0f, 0.0f, 1.0f);    设置顶点颜色数据

2.3.3.5gl.glDrawElements(GL10.GL_LINES, lineFacetsBuffer.remaining(),  绘制三维平面

2.3.3.6gl.glFinish();     结束绘制

以上是基本的步骤,对应到项目中请参考:Android OpenGL ES (二) 绘制三维/空间坐标系http://blog.csdn.net/zhangjikuan/article/details/20481255

你可能感兴趣的:(android-OpenGL,ES)