2012年4月28日 星期六

作業二 元智一館

主題介紹 3D元智一館




程式設計與寫作方法


先對一館大略切成4個方塊(從左至右) , 因為有樓梯 所以必須作空間的擷取  


對每個方塊座標化,  我寫在紙上 , 但已經被塗得很亂了,所以也不上傳


這次作業我把圓柱體刪掉改用L狀的8面體替代


一館的最左邊及中間的部分都是長方體,


而因為有樓梯的空間 , 所以有兩個小區域被挖空


因此要用L狀的8面體填滿空間   


而對這4個方塊我有自行寫個FUNCTION來描繪  , 程式碼會更簡潔易懂 


主體作完後 , 畫上2D平面的窗戶 , 在加上glRotate()以及glutSpecialFunc(), 使用上下左右鍵來控制旋轉便完成了




心得與討論
此次作業在3D建模上, 因為使用長方體所以較簡單, 而時間花最久的是在解決透明化 , 要使用
glEnable( GL_DEPTH_TEST ) ,GLUT_DOUBLE , glutSwapBuffers() 這三個函式,
雖然解決了透明化, 但是我又碰到會閃爍的狀況, 將窗戶平面拉出來後解決閃爍, 卻又造成整個一館左右相反, 不知道是DEPTH的問題還是什麼 至今我還找不到解答