두 세트의 Phong 광원을 설정하고, 여러 가지 다른 3D 모델을 그리고, 투명도를 설정하고, 키보드 상호 작용으로 회전을 제어합니다.
광원을 설정하는 코드:
void init(void) {
GLfloat light_position1[] = { 5.0, 5.0, 5.0, 1.0 };
GLfloat ambient1[] = { 0.2, 0.2, 0.2, 1.0 };
GLfloat diffuse1[] = { 1.0, 1.0, 1.0, 1.0 };
GLfloat specular1[] = { 1.0, 1.0, 1.0, 1.0 };
GLfloat light_position2[] = { -10.0, -10.0, -10.0, 0.0 };
GLfloat ambient2[] = { 0.2, 0.2, 0.2, 1.0 };
GLfloat diffuse2[] = { 1.0, 1.0, 1.0, 1.0 };
GLfloat specular2[] = { 1.0, 1.0, 1.0, 1.0 };
glClearColor(0.0, 0.0, 0.0, 0.0);
glShadeModel(GL_SMOOTH);
glLightfv(GL_LIGHT0, GL_POSITION, light_position1);
glLightfv(GL_LIGHT0, GL_AMBIENT, ambient1);
glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse1);
glLightfv(GL_LIGHT0, GL_SPECULAR, specular1);
glLightfv(GL_LIGHT1, GL_POSITION, light_position2);
glLightfv(GL_LIGHT1, GL_AMBIENT, ambient2);
glLightfv(GL_LIGHT1, GL_DIFFUSE, diffuse2);
glLightfv(GL_LIGHT1, GL_SPECULAR, specular2);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glEnable(GL_LIGHT1);
glEnable(GL_DEPTH_TEST);
glEnable(GL_NORMALIZE);
}