電腦圖學_week12
2021/05/10(一)
今日的上課內容:
- 改檔名為libglut32.a
- 下載檔案
- 放入檔案
- 下載及開啟3D-Exploring
- 下載gundam.auto.cpp(SampleApp格式)(圖1~圖4)
- 把gundam.auto.cpp加入week12資料夾中,並把main.c移除(圖5~圖6)
- 執行目錄疑難排解(記得.bmp要放在同目錄)(圖7)
- 新增兩行定義缺少的程式碼(圖8)
- 複習上週打光(圖9)
- 在compiler新增目錄
- 改專案的工作執行目錄(增加freeglut/bin裡面的freeglut.dll)(圖10)
- 貼圖程式碼放入還有圖片(diffuse.jpg)也加入專案目錄
今日程式碼:
<鋼彈轉檔程式碼>
///上周打光複習
- #include <GL/glut.h>
- #include <stdio.h>
- void display()
- {
- glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
- glutSolidTeapot(0.3);
- glutSwapBuffers();
- }
- const GLfloat light_ambient[] = { 0.0f, 0.0f, 0.0f, 1.0f };
- const GLfloat light_diffuse[] = { 1.0f, 1.0f, 1.0f, 1.0f };
- const GLfloat light_specular[] = { 1.0f, 1.0f, 1.0f, 1.0f };
- const GLfloat light_position[] = { 2.0f, 5.0f, 5.0f, 0.0f };
- const GLfloat mat_ambient[] = { 0.7f, 0.7f, 0.7f, 1.0f };
- const GLfloat mat_diffuse[] = { 0.8f, 0.8f, 0.8f, 1.0f };
- const GLfloat mat_specular[] = { 1.0f, 1.0f, 1.0f, 1.0f };
- const GLfloat high_shininess[] = { 100.0f };
- int main(int argc, char ** argv)
- {
- glutInit(&argc, argv);
- glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
- glutCreateWindow("week12 all in");
- glutDisplayFunc( display );
- glEnable(GL_DEPTH_TEST);
- glDepthFunc(GL_LESS);
- glEnable(GL_LIGHT0);
- glEnable(GL_NORMALIZE);
- glEnable(GL_COLOR_MATERIAL);
- glEnable(GL_LIGHTING);
- glLightfv(GL_LIGHT0, GL_AMBIENT, light_ambient);
- glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse);
- glLightfv(GL_LIGHT0, GL_SPECULAR, light_specular);
- glLightfv(GL_LIGHT0, GL_POSITION, light_position);
- glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);
- glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);
- glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);
- glMaterialfv(GL_FRONT, GL_SHININESS, high_shininess);
- glutMainLoop();
- }
今日成果:











沒有留言:
張貼留言