GLSurfaceView使用-入门之HelloWorld--画背景图
16lz
2021-01-26
package com.example.opengl_01;import java.nio.ByteBuffer;import java.nio.ByteOrder;import java.nio.FloatBuffer;import javax.microedition.khronos.egl.EGLConfig;import javax.microedition.khronos.opengles.GL10;import android.app.Activity;import android.opengl.GLSurfaceView;import android.os.Bundle;import android.util.Log;public class MainActivity extends Activity {private final String TAG = "MainActivity";private GLSurfaceView glSurefaceView;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);glSurefaceView = new GLSurfaceView(this);glSurefaceView.setRenderer(new GLSurfaceViewRender());this.setContentView(glSurefaceView);}@Overrideprotected void onResume() {super.onResume();glSurefaceView.onResume();}@Overrideprotected void onPause() {super.onStop();glSurefaceView.onPause();}class GLSurfaceViewRender implements GLSurfaceView.Renderer {@Overridepublic void onSurfaceCreated(GL10 gl, EGLConfig config) {Log.i(TAG, "onSurfaceCreated");// 设置背景颜色gl.glClearColor(0.0f, 0f, 1f, 0.5f);}@Overridepublic void onSurfaceChanged(GL10 gl, int width, int height) {// 设置输出屏幕大小gl.glViewport(0, 0, width, height);Log.i(TAG, "onSurfaceChanged");}@Overridepublic void onDrawFrame(GL10 gl) {Log.i(TAG, "onDrawFrame");// 清除屏幕和深度缓存(如果不调用该代码, 将不显示glClearColor设置的颜色)// 同样如果将该代码放到 onSurfaceCreated 中屏幕会一直闪动gl.glClear(GL10.GL_COLOR_BUFFER_BIT);}}}
更多相关文章
- Android(安卓)Studio下 SVN忽略文件设置
- Android(安卓)动态设置布局文件的exception
- 12.18android绘图,橡皮擦
- Android安卓开发 带删除按钮的EditText
- 侧滑菜单(二)
- activity添加切换动画之后出现的黑色背景问题
- 安卓自定义View实现扇形图表
- OKhttp上传头像,调用相机相册进行裁剪
- Android布局 屏幕滚动方法 ScrollView