当前位置:首页  综合精选

综合精选

opengl2010画笑脸(opengl 2 0)

2023-06-21 19:08:43
导读 大家好,小东方来为大家解答以上的问题。opengl2010画笑脸,opengl 2 0这个很多人还不知道,现在让我们一起来看看吧!1、完成工具的安装以

大家好,小东方来为大家解答以上的问题。opengl2010画笑脸,opengl 2 0这个很多人还不知道,现在让我们一起来看看吧!

1、完成工具的安装以后,继续在Eclipse中创建一个新的Android项目。

2、项目名称虽然不重要,但是该节将与主要活动有关,因此应认真学习掌握。

3、  首先看一段代码:  /**新建一个GLSurfaceView对象*/  privateGLSurfaceViewmGLSurfaceView;  GLSurfaceView是一个特殊的视图,它为我们管理OpenGL表面并将其绘制到Android视图系统中。

4、它还添加许多可以简化OpenGL使用的功能,包括但并不局限于:  它为OpenGL提供一个专用的渲染线程,使主线程得以继续。

5、  它支持连续或按需渲染,维护屏幕设置以及OpenGL和底层窗口系统之间的接口。

6、代码如下:  @Override  publicvoidonCreate(BundlesavedInstanceState)  {  ***.oncreate(savedInstanceState);    mGLSurfaceView=newGLSurfaceView(this);    //检测系统是否支持OpenGLES2.0  finalActivityManageractivityManager=(ActivityManager)getSystemService(***.activity_SERVICE);  finalConfigurationInfoconfigurationInfo=***.getdeviceconfigurationinfo();  finalbooleansupportsEs2=***.reqglesversion>=0x20000;    if(supportsEs2)  {    ***.seteglcontextclientversion(2);      ***.setrenderer(newLessonOneRenderer());  }  else  {    return;  }    setContentView(mGLSurfaceView);  }  在onCreate()方法里面主要是创建OpenGLES2.0上下文以及做一些初始化工作。

7、在onCreate()中,调用超类之后的第一件事情就是创建GLSurfaceView。

8、然后确定系统是否支持OpenGLES2.0。

9、因此,我们需要一个可以与全局系统状态相交互的ActivityManager实例,以及使用这个实例来得到设备配置信息,该信息将通知我们设备是否支持OpenGLES2.0。

10、  一旦确定设备是否支持OpenGLES2.0后,就会通知表面视图需要一个与OpenGLES2.0相兼容的视图,然后传递一个自定义渲染。

11、这个渲染将在任何需要调整表面或者绘制一个新的帧的时候被系统调用。

12、我们还通过传递一个不同的渲染来支持OpenGLEs1.x,尽管可能由于APIs的不同,导致我们需要编写不同的代码,但在这一节中,我们将只关注OpenGLES2.0。

13、  最后,我们为GLSurfaceView设置内容视图,它通知Android活动内容应该填补OpenGL表面,代码如下:  @Override  protectedvoidonResume()  {  ***.onresume();  ***.onresume();  }    @Override  protectedvoidonPause()  {  ***.onpause();  ***.onpause();  }  GLSurfaceView要求我们在任何父Activity的onResume()和onPause()方法被调用的时候调用onResume()和onPause()方法。

本文到此分享完毕,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!