1. 下載課本的範例 https://jsyeh.org/3dcg10/
2. 在下載資料夾, 把windows.zip 👉windows資料夾, data.zip裡面的 data 拉到 下載\windows資料夾裡
3. 執行 Shapes.exe 便可操作今天的課本範例
4. mouse右鍵,在右邊可切換 點、線、面
5. mouse右鍵,在左邊可切換大的頂點、逐個色彩
6. mouse左鍵,在右邊可按綠色數字上下調整
可以改色彩
glColor3f (r , g , b)
可以改頂點座標
glVertex2f (x , y)
##要寫程式,試試看點線面色彩
1.moodle下載 freeglut (桌面還有一份),點開他
2.把freeglut 用mouse drag到桌面,就裝好了
3.把桌面\freeglut\lib\libfreeglut.a複製成libglut32.a
4.CodeBlocks:File-New-Project, 選GLUT專案目錄選桌面,專案名取
weeek02_glut_color_teapot
5.GLUT要選桌面的freeglut
6.執行時,會跳出上周的程式。
7.左邊的Sources的main.cpp點開,把上週的10行貼上來。
#include <GL/glut.h>
void display()
{
glColor3f(1,1,0);
glutSolidTeapot( 0.3 );
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("week02_glut_color_teapot");
glutDisplayFunc(display);
glutMainLoop();
}
##要設定色彩
1. glColor3f(r, g, b);
2. 0, 1, 0 綠色, 1, 0, 0 紅色, 0, 0 ,1 藍色, 1, 1, 0 黃色
3. 可以用小畫家, 來畫其他的色彩. 使用滴管來吸色, 使用 「編輯色彩」來查看色彩的值, 變成有小數點的float浮點數
4. 以阿尼亞色彩為例, 兩個不同大小的茶壺, 用不同的色彩, 畫出兩色的效果
## 畫三角形
1. File-New-Project,GLUT專案,week02_glut_triangle
2. 一樣,把今天的10行貼下來,再加上今天的第二個主角:頂點
3. glBegin(GL_POLYGON);
4. glColor3f(r,g,b)
5. glVertex2f(x,y)
6. glEnd()
7. 以上是期中考時的
8. 在真的實作時, 會有很多組 glColor3f (r, g, b); 及 glVertex2f (x, y);
1. 開啟小畫家, 把圖片放上去
2. 小畫家的座標裡, 左上角是0, 0, 右下角是 400, 400
3. 關於座標, OpenGL 預設是「正中間0, 0」右邊是+1,左邊是-1,上面是+1,下面是-1。
4. 把小畫家的 (x座標-中心點200)/200.0 變成openGL的座標 口訣:減一半、在除一半.0
5. y 座標比較麻煩 -(y座標-中心點200)/200.0 ,口訣:減一半、除一半,再加負號
6. File-New-Project,GLUT專案,week02_glut_mspaint_help_draw
#畫圓圈
1.File-New-Project GLUT專案 week02_glut_circle_cos_sin
2.加入數學公式#include <math.h>
3.使用for迴圈 for(float a=0 ;a<=3.14*2 a+=0.1)
{glVertex2f(cos(a),sin(a));
## 用小畫家, 幫我們找到「任意形狀」的頂點座標
1. 開啟小畫家, 把圖片放上去。
2. 小畫家的座標裡, 左上角是0,0, 右下角是 400, 400 (假設圖片寬度400,高度40)
3. 關於座標, OpenGL 預設是「正中間0,0」, 右邊是 +1, 左邊是-1。上面是+1, 下面是-1。
4. 把小畫家的 (x座標-中心點200)/200.0 變成 OpenGL的座標 口訣: 減一半、再除一半.0
5. y座標比較麻煩 -(y座標-中心點200)/200.0, 口訣:減一半、除一半, 再加負號
6. File-New-Project, GLUT專案, week02_glut_mspaint_help_draw
沒有留言:
張貼留言