0
UPDATE2:クワッドのレンダリングだけを試みました。 円を描く奇妙な問題
UPDATE:FULLコードはこちらです。誰かが自分のコードで問題を確認できますか? http://dl.dropbox.com/u/8489109/HelloAndroid.7z
私はOpengl ES 1.0でサークルを描こうとしています。私は、Windowsプラットフォーム上で多くのSDLとOpenGLを使用しており、ゲームで使用したポリゴンの数が少ないため、ほとんどの場合glBeginとglEndを使用していました。
貼り付けられたコードは、オブジェクトが作成されるときに呼び出されるコードです。
float ini[]=new float[360*3];
ByteBuffer temp=ByteBuffer.allocateDirect(ini.length*4);
temp.order(ByteOrder.nativeOrder());
vertex=temp.asFloatBuffer();
int i;
float D2R=(float) (3.14159265/180);
for (i=0;i<360;i++){
float XX=(float)(Math.sin(i*D2R)*size);
float YY=(float)(Math.cos(i*D2R)*size);
ini[i*2]=XX;
ini[i*2+1]=YY;
ini[i*2+2]=0;
}
vertex.put(ini);
Log.d("GAME","SPAWNED NEW OBJECT");
length=ini.length;
//vertex=ByteBuffer.allocateDirect(temp.length*4).order(ByteOrder.nativeOrder()).asFloatBuffer();
//vertex.put(temp);
vertex.position(0);
は今ここにドローコード
Log.d("OBJECT","DUH WRITE");
gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
gl.glPushMatrix();
gl.glTranslatef((float)x,(float)y,0);
gl.glVertexPointer(3, GL10.GL_FLOAT,0, vertex);
gl.glDrawArrays(GL10.GL_LINE_LOOP, 0, length);
gl.glPopMatrix();
gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
それは、円を(それが実際に実行することを決定したときに)描画であり、いくつかの奇妙な行を追加します。 例:
これは誤りですか?
gl.glMatrixMode(gl.GL_PROJECTION);
gl.glLoadIdentity();
gl.glViewport(0, 0, arg1, arg2);
gl.glOrthof(0,(float)arg1,(float)arg2,0,-1,1);
gl.glMatrixMode(gl.GL_MODELVIEW);
gl.glLoadIdentity();
ええ、私はすべての行を読み始めてから10分後に見つけました。 glDrawArrays、glVertexPointerを使用しているのは初めてのことです。ご協力いただきありがとうございます!それは今働いている! – Xiofurry