1.主題介紹:元智一館3D
2.內容:
利用老師今天上課所教的gluLookAt來實作讓使用者看建築物每個方位的函式
然後利用glutSolidCube來實作一館
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(p1.xpos, p1.ypos, p1.zpos, p1.xpos-(float)sin(p1.heading*piover180)*10.0,
p1.ypos, p1.zpos-(float)cos(p1.heading*piover180)*10.0, 0.0, 1.0, 0.0);
//地板
glPushMatrix();
glTranslatef(-50.0f, -1.0f, 50.0f);
glScalef(100,0,100);
glColor3f(0.5,0.5,0.5);
glBegin(GL_POLYGON);
glVertex3f(0,0,0);
glVertex3f(1,0,0);
glVertex3f(1,0,-1);
glVertex3f(0,0,-1);
glEnd();
glPopMatrix();
//一館
glPushMatrix();
glTranslatef(-15.0, 0.0f, 10.0f);
glRotatef(30.0f, 0.0f, 1.0f, 0.0f);
glColor3f(0.7,0.7,0.7);
glScalef(2.0f, 0.5f, 0.5f);
glutSolidCube(10);
glPopMatrix();
glutSwapBuffers();
3.心得:
因為還沒有研究出如何在glutSolidCube產生出的立方體上做修改
所以做出來的一館十分粗糙,瀏覽一館的部分則是利用老師今天上
課所教的gluLookAt來設定看的人,然後可以做瀏覽的動作,希望可
以在下次做元智全地圖的時候完成更精細地圖物件的動作。