Консультация № 165728
24.04.2009, 06:16
0.00 руб.
0 0 0
Здравствуйте многоуважаемые эксперты, у меня такой вот вопросик. . . Пишу на VC++ 6.0 элементарный код для вывода сферы с наложенным материалом. Но материала нет ! А если и есть то извращенный до нельзя. . . точно такое же пишу на Delphi работает )) в чем дело ?

Приложение:

/////////////////////////Так вывожу !

void display()
{
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );


GLfloat mat_diffuse[] = {0.1,0.5, 0.8,1};
GLfloat mat_emission[] = {0.3,0.2,0.2,1};
GLfloat mat_specular[] = {1,1,1,1 };
GLfloat no_mat[4] = {0,0,0,1};
GLfloat mat_ambient[4] = {0.7, 0.7, 0.7 ,1};
GLfloat mat_shininess[1] = {100};


glMaterialfv(GL_FRONT, GL_AMBIENT, mat_ambient);
glMaterialfv(GL_FRONT, GL_DIFFUSE, mat_diffuse);
glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular);
glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess);
glMaterialfv(GL_FRONT, GL_EMISSION, no_mat);

GLUquadricObj *quadObjec;
quadObjec = gluNewQuadric();
gluSphere(quadObjec, 1, 100,100);



SwapBuffers(wglGetCurrentDC());
}


/////////////////////Так инициализирую

float pos[4] = {3,3,0,1};
float lambient[4] = {0.4,0.4,0.4,1};

hDC = GetDC(hWnd);
SetWindowPixelFormat();
hGLRC = wglCreateContext(hDC);
wglMakeCurrent(hDC, hGLRC);

glEnable(GL_DEPTH_TEST);
glEnable(GL_COLOR_MATERIAL);


glLightfv(GL_LIGHT0, GL_POSITION, pos);
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lambient);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);

Обсуждение

Форма ответа