if (useEnvmap)
{
glEnable(GL_TEXTURE_GEN_S);
glEnable(GL_TEXTURE_GEN_T);
glEnable(GL_TEXTURE_2D);
glTexGeni(GL_S, GL_TEXTURE_GEN_MODE,GL_OBJECT_LINEAR);
glTexGeni(GL_T, GL_TEXTURE_GEN_MODE,GL_OBJECT_LINEAR);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_NEAREST);
// when texture area is small, bilinear filter the closest mipmap
glTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER,
GL_NEAREST );
// when texture area is large, bilinear filter the first mipmap
glTexParameterf( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST );
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_REPEAT);
//glTexEnvi(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,GL_MODULATE);//combina texture cno luci
glBindTexture(GL_TEXTURE_2D, 3);
glDisable(GL_LIGHTING);
}
else
glColor3f(0,0,1);
glPushMatrix();
glTranslated((-myFloor->floorMaxX + xBuco)/2, maxY/2, pz+maxZ/2);
glScaled(abs(-myFloor->floorMaxX-xBuco)/2 , maxY/2 , maxZ);
drawCubeFill();
glPopMatrix();
glPushMatrix();
glTranslated(xBuco+bucoMaxX/2, (maxY-bucoMaxY)/2+bucoMaxY, pz+maxZ/2);
glScaled(bucoMaxX/2 , (maxY-bucoMaxY)/2 , maxZ);
drawCubeFill();
glPopMatrix();
glPushMatrix();
glTranslated((myFloor->floorMaxX + xBuco + bucoMaxX)/2, maxY/2, pz+maxZ/2);
glScaled(abs(myFloor->floorMaxX-(xBuco+bucoMaxX))/2 , maxY/2 , maxZ);
drawCubeFill();
glPopMatrix();
if (useEnvmap)
{
glDisable(GL_TEXTURE_GEN_S);
glDisable(GL_TEXTURE_GEN_T);
glDisable(GL_TEXTURE_2D);
glEnable(GL_LIGHTING);
}