[問題] OPGL裡的Timefunction
小弟在繪.STL的3D時想要先把點畫出來
在一條線一條線畫來看他點資料的順序
所以想用glut的Timer
可是怎麼用都沒有反應
而且測試了一下OPGL超級手冊光碟裡的檔案
他再第三章的檔裡有一個Bounce的檔是有用到 glutTimerFunc()的
(就是書上P.59的彈跳方塊)
發現這個擋我的連.exe按下去都只有一個藍色的背幕而已
請問這樣是發生了什麼事?
順便問一下...PTT有OPGL的專門板嗎?
附上寫的Timer部份
void DrowLines(int lNum)
{
glBegin(GL_LINE_STRIP);
glColor3f(1.0f, 0.0f, 0.0f);
glVertex3f(triArray[lNum].a[0],triArray[lNum].a[1],triArray[lNum].a[2]);
glVertex3f(triArray[lNum].b[0],triArray[lNum].b[1],triArray[lNum].b[2]);
glVertex3f(triArray[lNum].c[0],triArray[lNum].c[1],triArray[lNum].c[2]);
glEnd();
glutPostRedisplay();
glutTimerFunc(1000,DrowLines,++lNum);
}
void RenderScene(void)
{
// Clear the window
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
// Save matrix state and do the rotation
glPushMatrix();
glRotatef(xRot, 1.0f, 0.0f, 0.0f);
glRotatef(yRot, 0.0f, 1.0f, 0.0f);
glTranslatef(-cent[0], -cent[1], -cent[2]);
// Restore transformations
glPointSize(5);
glBegin(GL_POINTS);
glColor3f(1.0f, 2.0f, 0.0f);
for(int pNum=0;pNum<nTriangles;pNum++)
{
glVertex3f(triArray[pNum].a[0],triArray[pNum].a[1],triArray[pNum].a[2]);
glVertex3f(triArray[pNum].b[0],triArray[pNum].b[1],triArray[pNum].b[2]);
glVertex3f(triArray[pNum].c[0],triArray[pNum].c[1],triArray[pNum].c[2]);
}
glEnd();
glutTimerFunc(1000,DrowLines,0);
//Flush drawing commands
//glFlush();
glutSwapBuffers();
glPopMatrix();
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 編輯: koujason 來自: 218.171.137.21 (04/19 15:58)
推
04/19 16:12, , 1F
04/19 16:12, 1F
→
04/19 16:13, , 2F
04/19 16:13, 2F
→
04/19 16:17, , 3F
04/19 16:17, 3F
→
04/19 16:17, , 4F
04/19 16:17, 4F
推
04/19 16:18, , 5F
04/19 16:18, 5F
→
04/19 16:18, , 6F
04/19 16:18, 6F
→
04/19 16:31, , 7F
04/19 16:31, 7F
Programming 近期熱門文章
PTT數位生活區 即時熱門文章