OpenGL ESのエラーログ

XperiaOpenGLを動かしてみたらエラーが出ていたので調べた。

E/OpenGLES(  351): Application  (SDK target 0) called a GL11 Pointer method with an indirect Buffer.

indirect Bufferはダメだというのでdirect bufferにすればいいらしいが、エラーでも動いていたので何が悪いのかはわかりません。あとGL10のAPIしか使ってないのにGL11と言われるのがよく分からない。

public FloatBuffer getFloatBuffer(float[] buf){
	ByteBuffer bb = ByteBuffer.allocateDirect(buf.length*Float.SIZE/Byte.SIZE);
	bb.order(ByteOrder.nativeOrder()); // これをやらないとおかしくなる
	FloatBuffer fb = bb.asFloatBuffer();
	fb.put(buf);
	fb.position(0);
	return fb;
}

以下のサイトを参考にさせていただきました
http://d.hatena.ne.jp/rudi/20100507/1273237749