6
中調用glEnableClientState()和glDisableClientState()我只要在onSurfaceCreated()
方法GLSurfaceView.Renderer
接口中調用glEnableClientState()
一次。例如:什麼時候應該在android
public class GLRenderer implements GLSurfaceView.Renderer {
@Override
public void onSurfaceCreated(GL10 gl, EGLConfig config) {
gl.glEnableClientState(GL10.GL_VERTEX_ARRAY);
gl.glEnableClientState(GL10.GL_COLOR_ARRAY);
...
}
之後,我不再調用它們。我從來不會調用glDisableClientState()
方法。但是我看到很多程序員都調用這兩種方法,經常把它們包裝在所有的繪圖調用中。
我的方法有什麼問題嗎?或者這是一種很好的做法,或者更有效的方法是將這些方法用於所有繪圖調用?
謝謝。我已經計算出在示例代碼和庫中最常用的'glEnableClientState()'/'glDisableClientState()'可能是安全的,因爲啓用了所需的數組,並且當然它們在繪圖之後禁用了使用的數組,以避免產生負面干擾另一個繪圖代碼(可能不使用某些啓用的數組)。 – 2012-04-07 14:34:40