看了带纹理的三角形这个demo。
该demo最大的和上一个最大的不一样就是:用GLES10的静态方法,而不是GL10
不同之处:
ThestaticAPIsexposemoreoftheOpenGLESfeaturesthanthe
javax.microedition.khronos.openglesAPIs,andalso
provideaprogrammingmodelthatisclosertotheCOpenGLESAPIs,which
maymakeiteasiertoreusecodeanddocumentationwrittenfortheOpenGLESAPIs.
1、设置纹理前,设置了EGL。
下面这句设置了:不需要深度缓存,可提升性能
mGLView.setEGLConfigChooser(false);
2、纹理的初始化
glTexEnvf(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_REPLACE);
会影响到纹理的表现,参数挺多的,不同的参数表现出来有些不一样。(换了几个参数没有区别,估计在特定形式下有大作用)
int[] textures = new int[1];
glGenTextures(1, textures, 0);
mTextureID = textures[0];
glBindTexture(GL_TEXTURE_2D, mTextureID);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,GL_NEAREST);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
mTextureLoader.load(gl);
private class RobotTextureLoader implements TextureLoader {
public void load(GL10 gl) {
InputStream is = mContext.getResources().openRawResource(
R.raw.robot);
Bitmap bitmap;
try {
bitmap = BitmapFactory.decodeStream(is);
} finally {
try {
is.close();
} catch (IOException e) {
// Ignore.
}
}
GLUtils.texImage2D(GL_TEXTURE_2D, 0, bitmap, 0);
bitmap.recycle();
}
}
3、在onDrawFrame中绘制
voidglActiveTexture(GLenumtexUnit);
功能:选择一个纹理单元,接下来的纹理函数将修改该纹理单元.
中间还有一些对该纹理的设置,没有写出,activie可翻译出激活的意思,即对这个纹理已经设置号的参数再修改下
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, mTextureID);
mTriangle.draw(gl);
4、三角形类
没啥好说的,定义好顶点坐标、纹理坐标,再写个draw方法就行了。
值得注意的是:
api中这个三角形的纹理坐标较大,超过的范围根据其设定的参数进行了重复
分享到:
相关推荐
android ApiDemo android ApiDemo
android apidemo.apk
学习android 的sample apidemo 以后要用到这些例子 方便自己方便别人
把Android Apidemo第一个例子抽出来,以后每学一节就加进Apidemo框架里,加深理解
Google官方API(Android ApiDemo) 打包下载,初学者学习的捷径
android sdk中拿出来的 android api demo,sdk\samples\android-17,给需要的人
关于apidemo的例子,里面的例子非常的不错啊
android apidemo android apidemo android apidemo
Android官方apidemo,android studio直接导入,运行安装即可
谷歌官方Android ApiDemo,可直接导入Android Studio,全部配置好,导入即可跑通安装!
android 示例源码 apidemo 内容很全的,直接导入即可使用学习
android APIdemo 深入分析
android中文apidemo详解事例,适合新手阅读快速上手。
Android的Apidemo 的代码分析。非常好的资料,欢迎大家下载学习
腾讯微博APIDemo aip sdk
最新6.0,最新APIDEMO
在SpringBoot中应用swagger2的一个DEMO,主要功能包括:WEB访问API,API导出为adoc、html、pdf。项目中有中文字体文件,使用的时候先删除目录docs、html和pdf目录,启动项目,然后点击idea maven的test lifecycle。...
百度地图API使用,及Demo。一套应用程序接口,帮助开发者构建功能丰富、交互性强的地图应用程序。 JavaScript API Mobile API Web Services Flash API 导航控件 缩略图控件 地图类型控件 比例尺控件 ...