课本实例效果
自用
窗口初始设置
窗口的一些初始设置
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
// 设置背景色:白色
gl.glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
// 关闭抗抖动
gl.glDisable(GL10.GL_DITHER); //可提高性能
// 启动阴影平滑
gl.glShadeModel(GL10.GL_SMOOTH);
// 复位深度缓存
gl.glClearDepthf(1f);
// 所做深度测试的类型
gl.glDepthFunc(GL10.GL_LEQUAL);
// 启动深度测试
gl.glEnable(GL10.GL_DEPTH_TEST);
// 对透视进行修正
gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT, GL10.GL_NICEST);
//计算球面顶点坐标
makeSphereVertices();
}
@Override
public void onSurfaceChanged(GL10 gl, int width, int height) {
// 设置输出屏幕大小
gl.glViewport(0, 0, width, height);
// 设置投影矩阵
gl.glMatrixMode(GL10.GL_PROJECTION);
// 重置投影矩阵
gl.glLoadIdentity();
// 设置视口大小
GLU.gluPerspective(gl, 50, (float) width / (float) height, 0.1f,