Renderer render = new MyRenderer();//我们要实现的 Renderer
GLSurfaceView glView = new GLSurfaceView(this);
glView.setRenderer(render);
setContentView(glView);
这里的View是GLSurfaceView,需要向setContentView一样setRenderer。MyRenderer即我们要实现的类,他继承自GLSurfaceView的Renderer。我们要实现onSurfaceCreated(),onSurfaceChanged(),onDrawFrame()三个方法。代码如下:
import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;
import android.opengl.GLSurfaceView.Renderer;
public class MyRenderer implements Renderer{
public void onDrawFrame(GL10 gl) {
gl.glClearColor(1, 0, 0, 0);
// 清除屏幕和深度缓存
gl.glClear(GL10.GL_COLOR_BUFFER_BIT) | GL10.GL_DEPTH_BUFFER_BIT);
}
public void onSurfaceChanged(GL10 gl, int width, int height) {
// 设置 OpenGL 场景的大小
gl.glViewport(0, 0, width, height);
}
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
// TODO Auto-generated method stub
}
}
运行程序,显示一块红色屏幕。