我有一個生成的顯示列表看起來像這樣一個小片段:OpenGL的錯誤與1282 glEndList()
glNewList (CDisplayList :: GetBaseList() + 2, GL_COMPILE);
{
glBegin (GL_QUADS);
glPushMatrix();
//
// Move to slightly lower position.
//
glTranslatef (0.0f, -1.1f, 0.0f);
glColor4f (1.0f, 1.0f, 1.0f, 1.0f);
//
// Front facing.
//
glTexCoord2f (m_TexLeft, m_TexBottom); glVertex3f (m_Start, -0.1f, 0.0f);
glTexCoord2f (m_TexRight, m_TexBottom); glVertex3f (m_End, -0.1f, 0.0f);
glTexCoord2f (m_TexRight, m_TexTop); glVertex3f (m_End, -1.3f, 0.0f);
glTexCoord2f (m_TexLeft, m_TexTop); glVertex3f (m_Start, -1.3f, 0.0f);
//
// Back facing.
//
glTexCoord2f (m_TexLeft, m_TexTop); glVertex3f (m_Start, -1.3f, 0.0f);
glTexCoord2f (m_TexRight, m_TexTop); glVertex3f (m_End, -1.3f, 0.0f);
glTexCoord2f (m_TexRight, m_TexBottom); glVertex3f (m_End, -0.1f, 0.0f);
glTexCoord2f (m_TexLeft, m_TexBottom); glVertex3f (m_Start, -0.1f, 0.0f);
glPopMatrix();
glEnd();
}
glEndList();
GLenum e = glGetError();
在此間結束的「E」值始終是1282(無效操作,或類似的東西)。我不知道爲什麼。每次構建列表的命令後,我都從glNewList向下檢查了glGetError,它始終是相同的(零)。這個顯示列表是之前建立的3 - 2中的一個(用glGetError進行測試並返回零)。所以關於這個清單的一些事情特別是讓司機頭疼。
任何想法?請注意,m_TexLeft等是0,0,1,0.125(左,上,右,下)和m_Start,m_End是0,100。GetBaseList返回一個通過調用glGenLists(3)得到的整數確切的值是257)。
老實說,看不出有什麼問題。
啊是的。我甚至不確定他們在那裏做什麼。我最初在8年前寫過這篇文章 - 但是多年來對驅動程序的改進意味着如果我執行此列表,無論是否執行此列表,此代碼現在都會落在而不是繼續執行。現在編譯好了,謝謝。 – Robinson