電腦圖學_week03
2021/03/08(一)
今日的上課內容:
- 重新開啟範例程式並複製程式碼(opengl)
- 另存程式碼(4行)
- 解壓縮freeglut
- 將libfreeglut.a命名成libglut32.a
- 開啟新專案(glut)
- 刪除並留下display部分程式碼
- 留下精簡後的程式碼
- 產生三原色三角形
- 親手打造一個程式—實心茶壺
- 產生實心茶壺
- 圖解argv是什麼
今日的上課成果:
⬆️複製紅框中的程式碼
- glBegin(GL_TRIANGLES);
- glColor3f(1.0f, 0.0f, 0.0f); glVertex2f(0.0f, 1.0f);
- glColor3f(0.0f, 1.0f, 0.0f); glVertex2f(0.87f, -0.5f);
- glColor3f(0.0f, 0.0f, 1.0f); glVertex2f(-0.87f, -0.5f);
- glEnd();
⬆️開啟新專案(glut的)
- 記得引用
- #include <GL/glut.h>
- static void display(void)
- {
- //之前的程式碼
- glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glBegin(GL_TRIANGLES);
glColor3f(1.0f, 0.0f, 0.0f); glVertex2f(0.0f, 1.0f);
glColor3f(0.0f, 1.0f, 0.0f); glVertex2f(0.87f, -0.5f);
glColor3f(0.0f, 0.0f, 1.0f); glVertex2f(-0.87f, -0.5f);
glEnd();
- glutSwapBuffers();
- }
- int main(int argc, char *argv[])
- {
- //設定GLUT的初始化
- glutInit(&argc, argv);
//顯示模式
- glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
//開GLUT視窗
glutCreateWindow("GLUT Shapes");
//顯示的函式
glutDisplayFunc(display);
//GLUT主要的迴圈,卡住不要結束
glutMainLoop();
- }
⬆️上面程式的執行結果
- #include <GL/glut.h> ///使用GLUT外掛
- void display()
- {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); ///清空
glutSolidTeapot(0.3); ///實心茶壺
glutSwapBuffers(); ///交換2倍的buffers
- }
- int main(int argc, char ** argv)
- {
glutInit(&argc, argv); ///GLUT初始設定
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH); ///顯示模式
glutCreateWindow("07050135_郭岳霖"); ///開窗
glutDisplayFunc(display); ///等一下要顯示的函式
glutMainLoop(); ///主要迴圈
- }
⬆️上面程式的圖示
⬆️上面程式的執行結果
⬆️圖解argv是什麼








沒有留言:
張貼留言