1).根據上星期的進度做出一個y為1的空心甜甜圈
2).teacher said:試著做出3D方塊/平行四邊形/三角形
做出兩個面對面的3D多邊形
用彩帶將面接起來
複製面的程式碼
將glBegin(GL_QUAD_STRIP);內的函式改成GL_LINES
變成面+線的程式碼
要加上三角形可是好像出現bug
圖形轉動的時候兩者好像不再同一個空間下
glutMotionFunc(motion);
滑鼠拖曳旋轉喔
glutMouseFunc(mouse);//滑鼠up&down
將x,y的旋轉座標分別設定成依照滑鼠拖曳的值旋轉
glutInitDisplayMode(GLUT_DEPTH);//主程式內寫在Init後Create前
glEnable(GL_DEPTH_TEST);//深度測試
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);//清理時要清深度資料喔
做了深度測試以後,長方體跟三角體正面就會將背面遮住了
將glutMouseFunc(mouse);函式補完
float oldx=0,oldy=0;
void mouse(int button,int state ,int x,int y)
{
oldx=x;
oldy=y;
}
void motion(int x, int y)
{
printf("%f %f %d %d\n",angle,angle2,x,y);
angle-=x-oldx;
angle2+=y-oldy;
oldx=x;
oldy=y;
}
沒有留言:
張貼留言