我这次的一系列的学习都是以 GLSurfaceView 为渲染类。
使用的是 android.opengl.GLES20
第一课就学习最基础的代码,绘制一个颜色的背景
1、GLES的绘制 跟任何 控件或者接口其实都没有关系,只是调用其GLES2.0的方法,和对应的native方法罢了。
因为我这里使用的是GLSurfaceView来渲染的,所以需要在 Render 中实现绘制。
public class FirstOpenGLProjectRenderer implements GLSurfaceView.Renderer {
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
// 1、清空屏幕 防止有缓存,并使用自定义的颜色渲染屏幕
glClearColor(1.0f, 0.0f, 0.0f, 0.0f);
}
@Override
public void onSurfaceChanged(GL10 gl, int width, int height) {
// 2、设置显示的大小
glViewport(0, 0, width, height);
}
@Override
public void onDrawFrame(GL10 gl) {
// 3、onDrawFrame 方法会自己不断的调用, 1 2 步的方法属于初始化
// 这里清空屏幕,是为了防止有 渲染缓冲区 的数据交换造成缓存
glClear(GLES20.GL_COLOR_BUFFER_BIT);
glClearColor(1f,0f,0f,0f);
}
}