2011年5月18日 星期三

作業4 3D虛擬場景悠遊程式




這是這次作業的完成圖

這次的作業幾乎都是用老師給的範例程式改的

但是不知道為什麼,沒辦法載入物件

上網找了好多原因,還是沒辦法

後來跟同學討論
發現glutSolidCube (float size);
可以畫出立方體

所以我的一到七館都是用這個函式畫出來
再去縮放跟平移到正確的位置

再加上地上的紅磚道還有五館前的大圓環
看起來比較不會空空的:D

初始視角是從下坡道往五館的方向看去
左邊是一館,正前方是五館

本來想說打個光,建築物會比較立體
可是把打光的函式加入後
就會變成這樣=  =

建築物都變成灰灰白白的了,
而且地板在移動的時候會有閃爍的問題

地板閃爍應該是因為我的地板也是用
glutSolidCube (float size);
畫出來的,

後來有試著用GL_POLYGON畫
但是只要地板放大 建築物就整個不見了QQ

所以只好放棄打光了


心得:

一開始在寫的時候,
不太知道座標系統的位置
常常寫一寫,建築物就不見了

後來乾脆直接把x,y軸畫出來
多了x,y軸好畫多了
也知道目前視角及建築物的位置


按鍵移動的部分,
本來有自己寫了一個
可是按一按會跑到地板下面=__=
試了好久,後來還是用老師的寫法...


這次作業還蠻好玩的:D
雖然寫的時候有點頭痛
可是看著一到七館一棟一棟蓋出來
還可以在他們中間跑來跑去
真的很有成就感~


載入元件的問題,後來跟同學討論
有稍微找到原因,希望下個作業可以順利把元件載入
完成一個美美的作品:)

2011年5月13日 星期五

作業二 九大行星



這次的作業是九大行星中的太陽地球月亮彼此公轉自轉

一開始很快就把三顆星球畫好了

以為會很順利的完成這次作業

殊不知

困難的部分才正要開始

一開始搞不太清楚平移跟旋轉

使得地球完全不照預想中的方式繞

而是一直繞八字形,甚至整個飛出視窗外

上網找了一下資料,才把他們的運作弄清楚

弄完之後又是新的困難

地球怎麼繞都在太陽後面

再度上網google,找到了景深測試的函數 
glEnable(GL_DEPTH_TEST);

但是加進去之後

依舊沒辦法繞到太陽前面

到處找相關的程式碼參考比較

後來終於把這次作業完成了

雖然有點醜醜的

可是還是很開心:)

心得:

這次作業一直瘋狂的上網google相關的資料

尤其是地球繞不到太陽前面的狀況
超有挫折感的

不管怎麼改,每次出來的畫面都一樣

就是死都不到前面

弄了好久才解決這個問題

上網看了那麼多資料

希望接下來的作業

能夠更得心應手一些~