SimpleCube.java
Dosyayı İndir
package com.godoro.androidopengl;
import java.nio.*;
import javax.microedition.khronos.opengles.*;
public class SimpleCube {
private FloatBuffer vertexBuffer;
private ByteBuffer indexBuffer;
private FloatBuffer textureBuffer;
private float vertexArray[] = {
-1.0f, -1.0f, -1.0f,
1.0f, -1.0f, -1.0f,
1.0f, 1.0f, -1.0f,
-1.0f, 1.0f, -1.0f,
-1.0f, -1.0f, 1.0f,
1.0f, -1.0f, 1.0f,
1.0f, 1.0f, 1.0f,
-1.0f, 1.0f, 1.0f
};
private byte indexArray[] = {
0, 4, 5, 0, 5, 1,
1, 5, 6, 1, 6, 2,
2, 6, 7, 2, 7, 3,
3, 7, 4, 3, 4, 0,
4, 7, 6, 4, 6, 5,
3, 0, 1, 3, 1, 2
};
private float[] colorRGBA={
1.0f,
0.5f,
0.3f,
1.0f};
public SimpleCube() {
vertexBuffer = SimpleUtilities.toFloatBuffer(vertexArray);
indexBuffer = SimpleUtilities.toByteBuffer(indexArray);
}
public void draw(GL10 gl) {
gl.glFrontFace(GL10.GL_CW);
gl.glVertexPointer(3, GL10.GL_FLOAT, 0, vertexBuffer);
gl.glColor4f(colorRGBA[0],colorRGBA[1],colorRGBA[2],colorRGBA[3]);
gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
gl.glDrawElements(GL10.GL_TRIANGLES, 36, GL10.GL_UNSIGNED_BYTE,
indexBuffer);
gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
}
}
Dosyayı İndir