WEB开发网
开发学院手机开发Android 开发 Android OpenGL实战 开发框架搭建、三角形和四边形... 阅读

Android OpenGL实战 开发框架搭建、三角形和四边形的绘制

 2010-05-14 16:51:00 来源:WEB开发网   
核心提示:gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);// 重置当前的模型观察矩阵gl.glLoadIdentity();// 左移 1.5 单位,并移入屏幕 6.0gl.glTranslatef(-1.5f, 0.0f, -6.0f);// 允

gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);

// 重置当前的模型观察矩阵

gl.glLoadIdentity();

// 左移 1.5 单位,并移入屏幕 6.0

gl.glTranslatef(-1.5f, 0.0f, -6.0f);

// 允许设置顶点

gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);

// 设置三角形

gl.glVertexPointer(3, GL10.GL_FIXED, 0, triggerBuffer);

//绘制三角形

gl.glDrawArrays(GL10.GL_TRIANGLES, 0, 3);

// 重置当前的模型观察矩阵

gl.glLoadIdentity();

// 左移 1.5 单位,并移入屏幕 6.0

gl.glTranslatef(1.5f, 0.0f, -6.0f);

//设置和绘制正方形

gl.glVertexPointer(3, GL10.GL_FIXED, 0, quaterBuffer);

gl.glDrawArrays(GL10.GL_TRIANGLE_STRIP, 0, 4);

// 取消顶点设置

gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);

}

@Override

public void onSurfaceChanged(GL10 gl, int width, int height)

{

float ratio = (float) width / height;

//设置OpenGL场景的大小

gl.glViewport(0, 0, width, height);

//设置投影矩阵

gl.glMatrixMode(GL10.GL_PROJECTION);

//重置投影矩阵

gl.glLoadIdentity();

// 设置视口的大小

gl.glFrustumf(-ratio, ratio, -1, 1, 1, 10);

// 选择模型观察矩阵

gl.glMatrixMode(GL10.GL_MODELVIEW);

// 重置模型观察矩阵

gl.glLoadIdentity();

}

@Override

public void onSurfaceCreated(GL10 gl, EGLConfig config)

{

// 启用阴影平滑

gl.glShadeModel(GL10.GL_SMOOTH);

// 黑色背景

gl.glClearColor(0, 0, 0, 0);

// 设置深度缓存

gl.glClearDepthf(1.0f);

// 启用深度测试

gl.glEnable(GL10.GL_DEPTH_TEST);

// 所作深度测试的类型

gl.glDepthFunc(GL10.GL_LEQUAL);

上一页  1 2 3 4 5  下一页

Tags:Android OpenGL 实战

编辑录入:coldstar [复制链接] [打 印]
赞助商链接