bool DrawGLScene(GLvoid) // Here's Where We Do All The Drawing { if (bumps) { if (useMultitexture && maxTexelUnits>1) return doMesh2TexelUnits(); else return doMesh1TexelUnits(); } else return doMeshNoBumps(); }
void Sample_22::draw() { if (m_bumps) { if (m_useMultitexture && m_maxTexelUnits>1) doMesh2TexelUnits(); else doMesh1TexelUnits(); } else doMeshNoBumps(); m_xrot+=0.3f; // X Axis Rotation m_yrot+=0.2f; // Y Axis Rotation m_zrot+=0.4f; // Z Axis Rotation }
GLvoid NEHE22::DrawGLScene(){ if (bumps) { if (useMultitexture && maxTexelUnits>1){ doMesh2TexelUnits(); } else{ doMesh1TexelUnits(); } } else{ doMeshNoBumps(); } //draw FPS text GLint matrixMode; GLboolean lightingOn; lightingOn= glIsEnabled(GL_LIGHTING); /* lighting on? */ if (lightingOn) glDisable(GL_LIGHTING); glGetIntegerv(GL_MATRIX_MODE, &matrixMode); /* matrix mode? */ glDisable(GL_TEXTURE_2D); glDisable(GL_DEPTH_TEST); glMatrixMode(GL_PROJECTION); glPushMatrix(); glLoadIdentity(); glMatrixMode(GL_MODELVIEW); glPushMatrix(); glLoadIdentity(); glPushAttrib(GL_COLOR_BUFFER_BIT); /* save current colour */ glTranslatef(0.0f,0.0f,-1.0f); glColor3f(0.8f,0.8f,0.8f);//set text color computeFPS(); Utils::drawText(-0.98f,-0.98f, GLUT_BITMAP_HELVETICA_12, FPSstr); glPopAttrib(); glPopMatrix(); glMatrixMode(GL_PROJECTION); glPopMatrix(); glMatrixMode(matrixMode); if (lightingOn) glEnable(GL_LIGHTING); glEnable(GL_TEXTURE_2D); // Enable Texture Mapping glEnable(GL_DEPTH_TEST); glutSwapBuffers(); // handle keyboard input if (keys['e']){ keys['e']=false; emboss=!emboss; } if (keys['m']){ keys['m']=false; useMultitexture=((!useMultitexture) && multitextureSupported); } if (keys['b']){ keys['b']=false; bumps=!bumps; } if (keys['f']){ keys['f']=false; filter++; filter%=3; } if(specialKeys[GLUT_KEY_PAGE_UP]){ z-=0.02f; } if(specialKeys[GLUT_KEY_PAGE_DOWN]){ z+=0.02f; } if (specialKeys[GLUT_KEY_UP]){ xspeed-=0.01f; } if (specialKeys[GLUT_KEY_DOWN]){ xspeed+=0.01f; } if (specialKeys[GLUT_KEY_RIGHT]){ yspeed+=0.01f; } if (specialKeys[GLUT_KEY_LEFT]){ yspeed-=0.01f; } }