1. 自己畫東西
(1) 開啟Open GL檔
(2) 複製程式碼
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();
2. 重開一個GLUT檔
(1) 複製libfreeglut.a 並改成 libglut32.a(2) 存檔在C:\Users\Administrator\Desktop\freeglut
(3) 會出現
(4) 刪除程式碼,只留下
(5) 貼上程式碼
#include <GL/glut.h> GLUT外掛
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[])
{
glutInit(&argc, argv); 設定GLUT的初始化
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH); 顯示模式
glutCreateWindow("GLUT Shapes"); 開GLUT視窗
glutDisplayFunc(display); 顯示的函式
glutMainLoop(); GLUT主要的迴圈,卡住不要結束
}
#include <GL/glut.h> GLUT外掛
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 清空
glutSolidTeapot(0.3); 實心茶壺
glutSwapBuffers(); 交換兩倍的buffers
}
int main(int argc,char **argv)
{
glutInit(&argc,argv); 初始設定GLUT
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH); 顯示模式
glutCreateWindow("08160130"); 開一個視窗
glutDisplayFunc(display); 要顯示的函式
glutMainLoop(); 主要迴圈
}
4. 參數
(1) 用第一個檔案Week03_1修改
#include <stdio.h> (1) 開啟小黑 cmd
int main(int argc,char**argv)
{
printf("現在的 argc 是:%d\n",argc);
for(int i=0;i<argc;i++)
{
printf("argv[%d]是:%s\n",i,argv[i]);
}
}
(1) 開啟小黑 cmd
(2) 開啟 C:\Users\Administrator>C:\Users\Administrator\Desktop\Week03\bin\Debug\Week03.exe
(3) 在後面打參數
(4)
#include <GL/glut.h> ///GLUT外掛
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glColor3ub(181,212,148); ///unsigned byte 是 0~255
glBegin(GL_TRIANGLES);
glColor2f((223-150)/150.0,-(250-150)/150.0);
glColor2f((320-150)/150.0,-(237-150)/150.0);
glColor2f((296-150)/150.0,-(313-150)/150.0);
glEnd();
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv); ///設定GLUT的初始化
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH); ///顯示模式
glutCreateWindow("GLUT Shapes"); ///開GLUT視窗
glutDisplayFunc(display); ///顯示的函式
glutMainLoop(); ///GLUT主要的迴圈,卡住不要結束
}
7. 加課
(1) 設定GitHub帳號
(2) 加完整整程式碼 ```
(3) https://github.com/08160130/Week03-2021.03.08/blob/main/README.md
(3) https://github.com/08160130/Week03-2021.03.08/blob/main/README.md







沒有留言:
張貼留言