顯示具有 01160360_蔡妤安 標籤的文章。 顯示所有文章
顯示具有 01160360_蔡妤安 標籤的文章。 顯示所有文章

2017年7月2日 星期日

Week18 魚安的期末作品影片

我做了一隻蘑菇
他的身體在裏頭是固定不動的
手腳跟眼睛以及腿都可以移動
並且是對稱的方向
按1 可以用滑鼠對左手上下揮動
按2 可以用滑鼠對右手上下揮動
按3 可以用滑鼠對右眼左右飄移
按4 可以用滑鼠對左眼左右飄移
按5 可以用滑鼠對左腳開合控制
按6 可以用滑鼠對右腳開合控制

按住S可以存入所移動的數據
關掉之後再開
可以再按P讀取上一次S所存入的檔案

為了這次作業幾乎下課都留在學校做QAQ
因為家裡的電腦快要不行了常常跑到當機
而且防毒一直一直要擋程式編譯

所以也確認了在學校可以執行

音樂是放我最愛的動畫 神隱少女 的原聲帶
我很喜歡這樣搭配 有一種自己是宮崎駿的感覺

最後要加貼圖的時候試了一整個下午
到現在的6:26分
我用我二修時的改背景顏色的語法
居然就成功了???
        GLfloat pos[]= {0, 0, -1, 0};
        glLightfv(GL_LIGHT0, GL_POSITION, pos);
        glEnable(GL_LIGHT0);
上面三句加上去之後我整個海闊天空
我想 這應該是把背景再往後移動的意思?

總之在CC電腦教室看到我的蘑菇終於有草地之後
我很想哭。

謝謝老師,老師這是我四修電腦圖學,可以讓我過關嗎QAQ

2017年6月19日 星期一

Week17 魚安的筆記


1.期末作品示範
2.背景貼圖示範
3.打光,貼圖切換
4.讀檔內插示範
5.學期總複習

必須先下載OpenCV 2.1 並安裝到桌面
還需要cv210 / cxcore210 / highgui210 這三個檔案




void display()
{   
glEnable(GL_DEPTH_TEST); ///要啟動 Detph Test 深度值的測試,3D顯示才正確
    glClear(GL_COLOR_BUFFER_BIT  | GL_DEPTH_BUFFER_BIT);
    glPushMatrix();
        glBegin(GL_POLYGON);
            glTexCoord2f(0,0); glVertex3f(-1,+1,0);///前面是貼圖座標,後面是3D頂點
            glTexCoord2f(1,0); glVertex3f(+1,+1,0);
            glTexCoord2f(1,1); glVertex3f(+1,-1,0);
            glTexCoord2f(0,1); glVertex3f(-1,-1,0);
        glEnd();
    glPopMatrix();
    glFlush();
}

void myInit()
{
    quad = gluNewQuadric();
    id = myTexture("images.jpg");///id為貼圖,這樣就可以讀到貼圖的路徑

}




int myTexture(char *filename)
{
    IplImage * img = cvLoadImage(filename); ///OpenCV讀圖
    cvCvtColor(img,img, CV_BGR2RGB); ///OpenCV轉色彩 (需要cv.h)
    glEnable(GL_TEXTURE_2D); ///1. 開啟貼圖功能
    GLuint id; ///準備一個 unsigned int 整數, 叫 貼圖ID
    glGenTextures(1, &id); /// 產生Generate 貼圖ID
    glBindTexture(GL_TEXTURE_2D, id); ///綁定bind 貼圖ID
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); /// 貼圖參數, 超過包裝的範圖T, 就重覆貼圖
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); /// 貼圖參數, 超過包裝的範圖S, 就重覆貼圖
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); /// 貼圖參數, 放大時的內插, 用最近點
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); /// 貼圖參數, 縮小時的內插, 用最近點
    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, img->width, img->height, 0, GL_RGB, GL_UNSIGNED_BYTE, img->imageData);
    return id;

}

2017年3月6日 星期一

Week02 魚安的筆記


今天首先就畫了一個茶壺
只要10行程式碼就可以畫茶壺
還可以自由變換顏色


以下圖片有程式碼解析


glColor3f(red,green,blue)

想要顯示出自己想要的顏色
可以透過小畫家的顏色工具來選取
來取得代碼


除了可以修改顏色之外
也可以透過修改X Y Z軸數字來畫自己想畫的圖案


最後就是利用今天所學到的
來用三個三角形畫圖片~
完成回家作業!!




2017年2月20日 星期一

Week01 魚安的筆記


HW01

可以用這個網頁測試是否能跑動圖學檔案
由測試結果得知學校電腦是可以的唷 ^O^




HW02

步驟一
先開啟code block
點選file
點選new
點選preject

步驟二
選擇OpenGL專案

步驟三
將檔名設定為01160360_hw01
並把檔案儲存在桌面

步驟四
點開main.c的程式檔
會發現有179行的程式
不過不要緊張不用動它們
直接選擇上面的除錯執行

步驟五
執行之後會跑出一個會旋轉變色的三角形
就成功惹!!!!!



HW03

步驟一
先到社團可以下載老師已經處理好的freeglut資料夾
先把他下載下來解壓縮到桌面~

步驟二
一樣開啟code block
選擇file
選擇new
一樣是GLUT project
設定好檔名之後下一步
把解壓縮在桌面的freeglut的資料夾的網址貼到上頭

步驟三
一樣點開main.cpp就可以看到很多程式碼
也不要動它直接除錯執行
就可以看到三個在旋轉的立體圖形囉 ^_^