컴퓨터그래픽스 과제(3d 로봇)
본 자료는 5페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
해당 자료는 5페이지 까지만 미리보기를 제공합니다.
5페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

1. 프로그램 개요

2. 프로그램 제공 기능 및 사용 방법

3. 구현 방법

4. 실행화면

본문내용

m(-10.0, 10.0, -10.0 * (GLfloat) w/ (GLfloat) h,
10.0* (GLfloat) w / (GLfloat) h, 2.0, 20.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
/* 조명과 재질을 지정하고 은면제거 활성화
새로운 2차 곡면 객체들을 생성 */
void myinit()
{
GLfloat mat_specular[]={1.0, 1.0, 1.0, 1.0};
GLfloat mat_diffuse[]={1.0, 1.0, 1.0, 1.0};
GLfloat mat_ambient[]={1.0, 1.0, 1.0, 1.0};
GLfloat mat_shininess={100.0};
GLfloat light_ambient[]={0.1, 0.1, 0.1, 1.0};
GLfloat light_diffuse[]={1.0, 0.0, 1.0, 1.0};
GLfloat light_specular[]={1.0, 1.0, 1.0, 1.0};
GLfloat light_position[]={10.0, 10.0, 10.0, 0.0};
glLightfv(GL_LIGHT0, GL_POSITION, light_position);
glLightfv(GL_LIGHT0, GL_AMBIENT, light_ambient);
glLightfv(GL_LIGHT0, GL_DIFFUSE, light_diffuse);
glLightfv(GL_LIGHT0, GL_SPECULAR, light_specular);
glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);
glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);
glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);
glMaterialf(GL_FRONT, GL_SHININESS, mat_shininess);
glShadeModel(GL_SMOOTH);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glDepthFunc(GL_LEQUAL);
glEnable(GL_DEPTH_TEST);
glClearColor(1.0, 1.0, 1.0, 1.0);
glColor3f(0.0, 0.0, 1.0);
/* 새로운 2차 곡면객체 생성 */
h=gluNewQuadric();
gluQuadricDrawStyle(h, GLU_FILL);
t=gluNewQuadric();
gluQuadricDrawStyle(t, GLU_FILL);
lua=gluNewQuadric();
gluQuadricDrawStyle(lua, GLU_FILL);
lla=gluNewQuadric();
gluQuadricDrawStyle(lla, GLU_FILL);
rua=gluNewQuadric();
gluQuadricDrawStyle(rua, GLU_FILL);
rla=gluNewQuadric();
gluQuadricDrawStyle(rla, GLU_FILL);
lul=gluNewQuadric();
gluQuadricDrawStyle(lul, GLU_FILL);
lll=gluNewQuadric();
gluQuadricDrawStyle(lll, GLU_FILL);
rul=gluNewQuadric();
gluQuadricDrawStyle(rul, GLU_FILL);
rll=gluNewQuadric();
gluQuadricDrawStyle(rll, GLU_FILL);
}
void main(int argc, char **argv)
{
int sub1_menu, sub2_menu, sub3_menu;
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowSize(500, 500);
glutCreateWindow(\"Man Animation\");
myinit();
glutReshapeFunc(myReshape);
glutDisplayFunc(display);
glutMouseFunc(mouse);
/* 메뉴 생성 */
glutCreateMenu(menu);
/* 머리부분 서브메뉴 설정 */
sub1_menu = glutCreateMenu(menu1);
glutAddMenuEntry(\"head1\", 1);
glutAddMenuEntry(\"head2\", 2);
/* 팔 부분 서브메뉴 설정 */
sub2_menu = glutCreateMenu(menu2);
glutAddMenuEntry(\"right_upper_arm\", 3);
glutAddMenuEntry(\"right_lower_arm\", 4);
glutAddMenuEntry(\"left_upper_arm\", 5);
glutAddMenuEntry(\"left_lower_arm\", 6);
/* 다리 부분 서브메뉴 설정 */
sub3_menu = glutCreateMenu(menu3);
glutAddMenuEntry(\"right_upper_leg\", 7);
glutAddMenuEntry(\"right_lower_leg\", 8);
glutAddMenuEntry(\"left_upper_leg\", 9);
glutAddMenuEntry(\"left_lower_leg\", 10);
/* 메인 메뉴 설정 */
glutCreateMenu(menu);
glutAddSubMenu(\"head\", sub1_menu);
glutAddSubMenu(\"ram\", sub2_menu);
glutAddSubMenu(\"leg\", sub3_menu);
glutAddMenuEntry(\"torso\", 0);
glutAddMenuEntry(\"Animation\", 11);
glutAddMenuEntry(\"quit\", 12);
/* 마우스 가운데 버튼에 연결 */
glutAttachMenu(GLUT_MIDDLE_BUTTON);
/* 키보드 함수 활성화 */
glutKeyboardFunc(keys);
/* 은면 제거 활성화 */
glEnable(GL_DEPTH_TEST);
glutMainLoop();
}
  • 가격8,400
  • 페이지수17페이지
  • 등록일2012.09.17
  • 저작시기2003.12
  • 파일형식한글(hwp)
  • 자료번호#758073
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니