最近在学习opengl es,其中弄了一个小Demo,画了个天空盒,并在场景里加了个立方体,下面主要介绍下画立方体的流程。

一、在Android中使用opengl es,主要是使用GLSurfaceView和GLSurfaceView.Renderer。

GLSurfaceView继承自SurfaceView,通过该类来使用opengl es,为Android提供view。


通过setContentView(mGLSurfaceView)来实现的,这里我用MySurfaceViewGLSurfaceView进行了一下封装,放到自己建的类中。

二、连通了opengl esAndroidview,那么具体的内容将由GLSurfaceView.Renderer来提供,它是渲染器,也是我们要实现的一个接口,完成它的三个方法:

a. onSurfaceCreated,在Surface创建的时候调用

b.onSurfaceChanged, 在Surface改变的的时候调用

c. onDrawFrame, 在Surface上绘制的时候调用,也代表着画面的每一帧

在自己建立的MySurfaceView类中使用内部类SceneRenderer来实现Renderer接口

针对要实现的三个方法进行介绍,直接上代码,代码中注释很清晰,主要说一下图中后两行,使用的矩阵后面在介绍,而最后一行,该类将在onDrawFrame中完成立方体的绘制



更多相关文章

  1. 字体图标的引入和通过媒体查询改变导航样式
  2. HTML样式和常用选择器
  3. 字体图标的引用和自定义样式/媒体查询的使用
  4. 数据库的CURD操作、PDO本质与原理的学习
  5. CSS之伪类选择器和简单盒子简单案例
  6. 伪类选择器与盒模型常用属性
  7. 伪类选择器-结构伪类、根据位置选择匹配
  8. 7.4——常用标签与应用场景之表格与单元格
  9. css伪类选择器和盒模型

随机推荐

  1. 廖雪峰python3.6教程笔记1-Python简介与
  2. python:如何在Linux中编写守护进程
  3. 自学Python1.5-Centos内python2识别中文
  4. Python3 函数式编程(高阶函数)
  5. 开发者实验室体验之文智自然语言处理SDK
  6. Python 3.4:试图让这个模块对这个2d数组中
  7. 在运行期间计算python中GradientBoosting
  8. 【Python】【matplotlib】面向对象方式绘
  9. 【Python深入】Python中继承object和不继
  10. 在Python中接收16位整数。