今天是第二周呢....
上課一開始老師教我們先選取OPEMGL和GLUT裡的程式碼,不過現在還不知道要幹嘛
 |
OPENGL先反白這幾行等等會用到
|
 |
| GLUT反白這幾行等等會用到 |
 |
刪除了非常多東西只留下這幾行簡單的程式碼後 加入第7行的 glutSolidTeapoot(0.3);
|
執行程式後就會跑出茶壺了!!!!!
程式碼:
#include <GL/glut.h>///使用 GLUT外掛
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);///清背景
glutSolidTeapot(0.3);
glutSwapBuffers();///更新畫面
}
int main(int argc, char *argv[])///main()函式
{
glutInit(&argc, argv);///(1)Init初始化GLUT
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);///(2)Init初始化display的功能
glutCreateWindow("08160830");///建立GLUT視窗
glutDisplayFunc(display);///(4)準備display()函式
glutMainLoop();///(5)主要函式
}
 |
如果在display函式中加入: glutColor3f(1,0,0);///改變顏色
|
 | 來了來了 剛剛第一個反白的程式碼 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(); 有作用了 把它加進去 display函式裡 就可以出現一個彩色三角形 所以就蹦出了上面那個很騷的茶壺三角形了
程式碼:
#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();
glColor3f(1,0,5);
glutSolidTeapot(0.3);
glutSwapBuffers();
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("08160830");
glutDisplayFunc(display);
glutMainLoop();
}
如果在第7行的程式碼中 glBegin(GL_TRIANGLES); 將TRIANGLES改成glBegin(GL_LINE_LOOP); 就會出現上面的線線三角形
|
|
======================================================================
 |
| 這幹嘛的我不知道 |
不過程式碼是這樣:
#include <stdio.h>
int main(int argc,char* argv[])
{
printf("有幾個參數argc: %d\n",argc);
for(int i=0;i<argc;i++){
printf("參數%d: %s\n",i,argv[i]);
}
}
沒有留言:
張貼留言