WEEK13
week13-1
從jsh網址打開
模式從mamb改成
<以下為控制鍵>
ALT+LEFT:
ALT+C:平移
滾輪:縮放
左鍵:
FILE-:
FILE-:
ff
week13-2
因為要liblib
檔案 想備份的話在前面加#
會變成註解
final_project
組合模型(匯入模型&組合)
把week10的glm複製到FINAL _project專案
在專案的add file,把檔案傳進來
file-save everytjing存檔
載好的head.obj body.obj uparmR.obj lowarmR.obj 複製到專案model目錄
glDraw(bodyGLM_MATTERIAL);
glMatrix();
glutSwapBuffers()
紅色身體
#include <stdio.h>
#include <GL/glut.h>
#include "glm.h"
GLMmodel * head = NULL;
GLMmodel * body = NULL;
GLMmodel * uparmR = NULL;
GLMmodel * lowarmR = NULL;
int show[4] = {0,1,0,0};
void keyboard(unsigned char key,int x,int y){
if(key=='0') show[0] = !show[0];
if(key=='1') show[1] = !show[1];
if(key=='2') show[2] = !show[2];
if(key=='3') show[3] = !show[3];
glutPostRedisplay();
}
FILE * fout = NULL;
FILE * fin = NULL;
float teapotX=0,teapotY=0;
float angle=0,angle2=0,angle3=0;
void display(){
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glScalef(0.2,0.2,0.2);
if(body==NULL){
head=glmReadOBJ("model/head.ob");
body=glmReadOBJ("model/body.ob");
uparmR=glmReadOBJ("model/uparmR.ob");
lowarmR=glmReadOBJ("model/lowarmR.ob");
}
if(show[0]) glmDraw(head,GLM_MATERIAL);
glPopMatrix();
if(show[1]) glmDraw(body,GLM_MATERIAL);
glPopMatrix();
if(show[2]) glmDraw(uparmR,GLM_MATERIAL);
glPopMatrix();
if(show[3]) glmDraw(lowarmR,GLM_MATERIAL);
glPopMatrix();
glutSwapBuffers();
}
int oldX=0,oldY=0;
void motion(int x,int y){
teapotX +=(x-oldX)/150.0;
teapotY +=(y-oldY)/150.0;
oldX=x;
oldY=y;
printf("glTranslatef(%f,%f,0);\n",teapotX,teapotY);
glutPostRedisplay();
}
void mouse(int button,int stage,int x,int y){
if(stage==GLUT_DOWN){
oldX=x;
oldY=y;
angle=x;
}
display();
}
git不會備份.obj,.dll,.a,.lib,要在傳之前先註解,怕檔案消失
改完CodeBlocks>Save everything

沒有留言:
張貼留言