今天一上課老師先讓我們跑範例
並且介紹RT跟TR的差別
RT對中心旋轉
TR對鈕扣旋轉
再來就是該進入正題的時候了
開始要自己製作了
一如往常地先從茶壺開始
很快地加入打光
再來是換成機器人
這個是會自己轉的
glPushMatrix();
glTranslatef(0.5,0,0);
glRotatef(angle,0,0,1);
glTranslatef(0.25,0,0);
drawArm();
glPopMatrix();
再來是用滑鼠轉的
雖然截圖看起來差不多但是真的有不一樣
void motion (int x,int y)
{
angle -= y-oldY;
oldY=y;
oldX=x;
}
void mouse (int button, int state, int x ,int y)
{
if(state==GLUT_DOWN)
{
oldX=x;
oldY=y;
}
}
這次的又加了一段手臂
看起來有點厲害
動作都有健身的感覺
但是只有單隻手臂
glPushMatrix();
glTranslatef(0.5,0,0);
glRotatef(angle,0,0,1);
glTranslatef(0.25,0,0);
drawArm();
glPushMatrix();
glTranslatef(0.25,0,0);
glRotatef(angle,0,0,1);
glTranslatef(0.25,0,0);
drawArm();
glPopMatrix();
glPopMatrix();
最後最後是有雙手臂
而且都是兩截的
依樣是用滑鼠進行控制的
兩隻手臂看起來很像健美先生
glPushMatrix();
glTranslatef(0.5,0,0);
glRotatef(angle,0,0,1);
glTranslatef(0.25,0,0);
drawArm();
glPushMatrix();
glTranslatef(0.25,0,0);
glRotatef(angle,0,0,1);
glTranslatef(0.25,0,0);
drawArm();
glPopMatrix();
glPopMatrix();
glPushMatrix();
glTranslatef(-0.5,0,0);
glRotatef(-angle,0,0,1);
glTranslatef(-0.25,0,0);
drawArm();
glPushMatrix();
glTranslatef(-0.25,0,0);
glRotatef(-angle,0,0,1);
glTranslatef(-0.25,0,0);
drawArm();
glPopMatrix();
glPopMatrix();
沒有留言:
張貼留言