概述
Android OpenGL ES三维视图中比绘制二维时候其实是更简单的,因为他增加了一个三角面数组可以选择绘制那几个面,看下面例子
// 定义立方体的8个顶点
float[] lineVertices = new float[] {
// 上顶面正方形的四个顶点
x, y, z,//0
x, 0,z,//1
0,0,z,//2
0,y,z,//3
// 下底面正方形的四个顶点
x,y,0,//4
x,0,0,//5
0,0,0,//6原点
0,y,0,//7
};
//画长方体的12条边 里面表示的是从上面数组中第几个点到第几个点画直线
byte[] lineFacets = new byte[]{
0,1,
0,3,
0,4,
1,2,
1,5,
2,3,
2,6,
3,7,
4,5,
4,7,
5,6,
6,7
};
第一个数组是定义的正方体的顶点,第二个数组是告诉画顶点中的那几条线,0,1,表示画第一个数组中的第一个点和第二个点连成一条线
当然我这里讲的是三维画线的情况,画三角形的情况也是一样的,只是选择第一个数组中的三个点画一个三角形而已
这时调用gl.glDrawElements(GL10.GL_LINES, lineFacetsBuffer.remaining(), //2.3.3.5
GL10.GL_UNSIGNED_BYTE, lineFacetsBuffer);
注意三维中的数组是要经过转换的
最后
以上就是自觉中心为你收集整理的Android OpenGL ES (三)三维绘图中的三角面数组讲解facets的全部内容,希望文章能够帮你解决Android OpenGL ES (三)三维绘图中的三角面数组讲解facets所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复