OpenGl入门

来源:互联网 发布:兄弟连 it教育 骗局 编辑:程序博客网 时间:2024/05/16 21:29

package com.example.ar_envtetxt.utils;

import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;

import android.app.Activity;
import android.opengl.GLES20;
import android.opengl.GLSurfaceView;
import android.opengl.GLSurfaceView.Renderer;
import android.os.Bundle;

public class GLSufaceViewLesson_01 extends Activity implements Renderer{
//定义
private GLSurfaceView glSurfaceView;

@Overrideprotected void onCreate(Bundle savedInstanceState) {    // TODO Auto-generated method stub    super.onCreate(savedInstanceState);    glSurfaceView = new GLSurfaceView(this);    glSurfaceView.setEGLContextClientVersion(2);    glSurfaceView.setRenderer(this);    glSurfaceView.setEGLConfigChooser(8, 8, 8, 8, 16, 0);    //在后台中渲染    glSurfaceView.setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY);    setContentView(glSurfaceView);}/** * 处理声明周期 */@Overrideprotected void onPause() {    // TODO Auto-generated method stub    super.onPause();    if(glSurfaceView != null )        glSurfaceView.onPause();}@Overrideprotected void onResume() {    // TODO Auto-generated method stub    super.onResume();    if(glSurfaceView != null)        glSurfaceView.onResume();}

/**
* 每次 横竖屏 切换的时候会调用
*/
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
// TODO Auto-generated method stub
gl.glClearColor(1.0f, 0.0f, 0.0f, 0.0f);

}@Overridepublic void onSurfaceChanged(GL10 gl, int width, int height) {    gl.glViewport(0, 0, width, height);}@Overridepublic void onDrawFrame(GL10 gl) {    gl.glClear(GLES20.GL_COLOR_BUFFER_BIT);}

}

0 0
原创粉丝点击