Показать сообщение отдельно
Старый 31.01.2010, 11:23   #1 (permalink)
LAMPARD
Member
 
Регистрация: 29.06.2009
Сообщений: 92
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 13
По умолчанию Помогите с зачетом в OpenGL

Помогите с зачетом в opengl на Microsoft Visual C++ 6.0, надо сдать завтра ,надо из данного кода сделать так чтобы происходила анимация сферы надо использовать функцию idlefunc помогите кто может,вод код программы


#include <GL/glut.h>

const float leftside=-5,rightside=5,downside=-5,upside=5,nearside=5,farside=-5;
float radius=1;
int angle=0; /* для вращения */
void init(void)
{
GLfloat globalAmbient[]={0.1,0.1,0.1,1.0};
GLfloat light_position[]={1.0,1.0,1.0,0.0};
GLfloat light_ambient[]={0.0,0.0,0.0,1.0};
GLfloat yellow_light[]={1.0,1.0,1.0,1.0};

glLightModelfv(GL_LIGHT_MODEL_AMBIENT,globalAmbien t);
glLightfv(GL_LIGHT0,GL_POSITION,light_position);
glLightfv(GL_LIGHT0,GL_AMBIENT,light_ambient);
glLightfv(GL_LIGHT0,GL_DIFFUSE,yellow_light);
glLightfv(GL_LIGHT0,GL_SPECULAR,yellow_light);

glEnable(GL_COLOR_MATERIAL);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glEnable(GL_DEPTH_TEST);
}

void display(void)
{
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glColor3f(1.0, 1.0, 1.0); /* áåëàÿ îñü */
glBegin (GL_LINES);
glVertex3f(0.0, 2.0, 0.0);
glVertex3f(0.0, -2.0, 0.0);
glEnd ();

glColor3f(0.0, 1.0, 0.0); /* çåëåíàÿ çåìëÿ */
glutSolidSphere (radius,50,50);
glutSwapBuffers();
}


void reshape(int width, int height)
{
glViewport(0,0,width,height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(leftside,rightside,downside,upside,farside ,nearside);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}

int main(int argc,char **argv)
{
glutInit(&argc,argv);
glutInitDisplayMode (GLUT_DOUBLE|GLUT_RGB);
glutInitWindowPosition(100,100);
glutInitWindowSize(500,500);
glutCreateWindow("âðàùåíèå çåìëè");
init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutMainLoop();
return 0;
}

Последний раз редактировалось LAMPARD; 31.01.2010 в 12:59
LAMPARD вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070