2010年12月22日 星期三

HW4 Class1201A

這次作業是要畫出一間教室的模型

重點在於要如何讀入OBJ物件

例如桌子 椅子 電腦 等等...

我的構想是做一間教室   並且能讓使用者以第一人稱的視野在裡面遊走

並且撞到牆壁會無法行走  甚至有時間可以加強到桌椅也會有碰撞

所以首先

畫出教室的第一步 當然是先畫出四面牆

簡單的設置一下牆壁的向量材質 光線 可愛的四面牆就出來了

並且使用透視投影 使整個畫面更有臨場感!


接著人物第一人稱視角也完成了

把攝影機限制在框框的範圍內  並且綁定腳色抬頭的仰角最大度數

底下是第一人稱的視野模式  也加寬了攝影機的視野


緊接著就是教室裡的桌椅了!

接著我想要讀出一些OBJ檔

但是Obj檔的face處理有些麻煩   有些有四個vretex一面 有的則是三個

所以我使用了Glm來幫助我處理讀檔  他還能處理Mlt的材質

並且把讀出來的物件存到GLuint以方便使用

我從網路上尋找好看的素材放進教室!

以下是貼上椅子後的教室


經過整理後...



2010年11月28日 星期日

HW3 九大行星!

這次的作業是要建出九大行星運動的情形

基本上先約略創造出一些球體當作行星

再來每個行星都有自己的公轉跟自轉速率

並且都圍繞著太陽

這些基本上只需要用到Rotated跟Translate就可以完成

比較麻煩的地方在於公轉跟自轉都要用到Rotated

要注意是對甚麼旋轉  才不會錯亂

基本的雛型大約是這樣


他有在旋轉喔 先作圓形軌道的旋轉



接下來打算做行星的貼皮

有空再做橢圓形軌道!!

/////////////////////////////////////////////
把一些光線加進去了!

加上材質:


2010年10月24日 星期日

HW2 打開ply檔!!

這次的作業是要我們寫出一個可以打開PLY檔的FUNTION

機本上都是些簡易的開檔讀檔   重點是只要知道PLY檔內的資料表示法

知道後我們很容易的就能把檔案讀出來

資料讀進來後 掛個迴圈跑每個小三角形就能跑出漂亮的3D圖形囉!

這張就是tommygun.ply開出來的圖形!!

 感覺有點稍嫌單調   這樣看起來跟2D沒甚麼差別

於是我又加上了移動跟旋轉的功能   用WASD移動     滑鼠左右鍵旋轉X,Y軸

旋轉是利用glRotatef()來達成   底下將圖形用 GL_LINE_LOOP來試試看

相當帥氣呢!!
雖然看得出是3D的圖形了   但是感覺還是少了些甚麼

之後再嘗試加光源進去吧!!

2010年10月10日 星期日

OpenGL HW1 Moon Festival



我第一個圖學的作業  雖然還有很多很多可以加強的地方 但也是我第一個OpenGL程式!

這次題目中秋節:

讓我想到月兔在月亮上狂歡  跟我們互相對應慶祝的情結

(其實本來想要話一隻嫦娥  但礙於技術問題就沒有畫進去)

我這張圖背景的星空是隨機的 因此每次開出來都會不太一樣

這次作業讓我覺得最麻煩的地方是要不斷的較準

把東西放到想要的位置上需要不斷的嘗試

而且所有的圖型都是用幾何拼湊的 要相當的有創意!

做完這作業還滿有成就感的!  相信以後技術精進後能做出更漂亮的作品來!!

回去後又稍稍做了些修正!


多增加了一棟房子! 更有節慶的感覺

還有修正一下拼錯的單字...

注意~後方的星空有變化 (但這次感覺比較沒這麼好看)

有機會在補嫦娥吧 哈哈