WEEK02
1. 至https://jsyeh.org/3dcg10 下載 data.zip windows.zip glut32.dll
2. 解壓縮 windows.zip 跟 data.zip -> glut32.dll 放到 windows.zip解壓縮後的資料夾內
3. 執行Shapes.exe 看範例,試試看
左可按右鍵選單: 大頂點、很多顏色
右可按右鍵選單: POINT....POLYGON
執行上禮拜的程式
1.下載 Git for Windows
2. 開啟 Git Bash: cd desktop, git clone 你的網址 cd 2022graphics1
3. 下載 freeglut, 記得改檔名 lib\libglut32.a
4. 在 CodeBlocks File-Open week01_GLUT專案
5.執行
寫出第一個GLUT程式
茶壺
1.開新的project
#include GLglut.h
void display ()
{
glClear( GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT );
glColor3f(1,1,0);
glutSolidTeapot(0.3);
glutSwapBuffers();
}
int main (int argc,char argv)
{
glutInit( &argc,argv);
glutInitDisplayMode( GLUT_DOUBLE GLUT_DEPTH);
glutCreateWindow(第二周的程式!);
glutDisplayFunc(display);
glutMainLoop();
}
2.輸入程式碼
彩色三角形
1.修改茶壺程式碼
#include <GL/glut.h> ///使用GLUT外掛簡化程式
void display ()
{
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glColor3f(1,1,0);///設定色彩
glBegin(GL_POLYGON);
glColor3f(1,1,0);///紅色
glVertex2f(-1,-1);
glColor3f(0,1,0);///綠色
glVertex2f(+1,-1);
glColor3f(0,0,1);///綠色
glVertex2f(0,+1);
glEnd();
glutSwapBuffers();///畫好後,交換出來
}
int main (int argc,char** argv)///main()主函式 進階版
{
glutInit( &argc,argv);///把參數,送給glutInit 初始化
glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH);///雙緩衝區+3D深度功能
glutCreateWindow("第二周的程式!");///開GLUT視窗
glutDisplayFunc(display);///用來顯示的函式
glutMainLoop();///主要的程式迴圈
}
2.執行程式
Homework-菱形
1.依照三角形程式碼
2.改變頂點、顏色,畫出藍色菱形
#include <GL/glut.h> ///使用GLUT外掛簡化程式
void display ()
{
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glColor3f(1,1,0);///設定色彩
glBegin(GL_POLYGON);
glColor3f(2,1,1);
glVertex2f(0.5,0);
glColor3f(0,2,1);
glVertex2f(0,1);
glColor3f(0,5,1);
glVertex2f(-0.5,0);
glColor3f(0,5,1);
glVertex2f(0,-1);
glEnd();
glutSwapBuffers();///畫好後,交換出來
}
int main (int argc,char** argv)///main()主函式 進階版
{
glutInit( &argc,argv);///把參數,送給glutInit 初始化
glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH);///雙緩衝區+3D深度功能
glutCreateWindow("第二周的程式!");///開GLUT視窗
glutDisplayFunc(display);///用來顯示的函式
glutMainLoop();///主要的程式迴圈
沒有留言:
張貼留言