使用OpenGL ES绘制3D图形需要注意的几点是:
1. Android的三维坐标系默认原点位于屏幕中央。
2. 绘制3D图形时,各个顶点的坐标是以原点为参照的,比如顶点坐标为(0.5,0,0), 表示顶点在正x轴的二分之一处。
3. 绘制前需调用glTranslatef(x, y, z) 函数设置图形的参照原点。
4. OpenGL ES绘制的图形都是由若干个三角形组合起来的。
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.FloatBuffer;
import java.nio.IntBuffer;
import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;
import android.opengl.GLSurfaceView.Renderer;
public class MyRenderer implements Renderer {
float[] taperVertices = new float[]{//三棱锥的四个顶点
0.0f,0.4f,0.0f,
-0.4f,-0.4f,-0.4f,
0.4f,-0.4f,-0.4f,
0.0f,-0.4f,0.4f
};
int[] taperColors = new int[]{//三棱锥的四个顶点的颜色
655335,0,0,0,
0,655335,0,0,