Android OpenGL ES行抗锯齿
我的代码如下 如果我添加此代码Android OpenGL ES行抗锯齿,android,opengl-es,Android,Opengl Es,我的代码如下 如果我添加此代码 public void draw(GL10 gl) { gl.glFrontFace(GL10.GL_CCW); gl.glEnable(GL10.GL_CULL_FACE); gl.glCullFace(GL10.GL_BACK); gl.glEnableClientState(GL10.GL_VERTEX_ARRAY); /* gl.glBle
public void draw(GL10 gl) {
gl.glFrontFace(GL10.GL_CCW);
gl.glEnable(GL10.GL_CULL_FACE);
gl.glCullFace(GL10.GL_BACK);
gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
/*
gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);
gl.glEnable(GL10.GL_BLEND);
gl.glEnable(GL10.GL_LINE_SMOOTH);
*/
gl.glVertexPointer(3, GL10.GL_FLOAT, 0, vertexBuffer);
gl.glLineWidth(3.0f);
gl.glColor4f(1.0f, 1.0f, 1.0f, 1.0f);
gl.glDrawArrays(GL10.GL_LINE_STRIP, 0, list.size()/3);
gl.glDisableClientState(GL10.GL_VERTEX_ARRAY);
gl.glDisable(GL10.GL_CULL_FACE);
//gl.glDisable(GL10.GL_BLEND);
//gl.glDisable(GL10.GL_LINE_SMOOTH);
}
然后我得到一条非常细(1px)的线,而不是一条反序列化的线。正确执行其操作的最佳方法是什么?我认为您所做的是正确的,但您确定您的设备支持消除混叠吗?请看这篇博文:
我的设备是三星galaxy S i9000和HTC Legend。是的,我认为它们不支持在线消除混叠。事实上,我认为OpenGL ES 1.0只支持多边形的反走样。这确实是很久以前的事了,但是有人能找到那篇博文的信息吗?(链接已断开)
gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);
gl.glEnable(GL10.GL_BLEND);
gl.glEnable(GL10.GL_LINE_SMOOTH);