LoadingScreen.cpp 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #include "LoadingScreen.h"
  2. #include <GL\freeglut.h>
  3. #include "CrystalPoint.h"
  4. #include "Util.h"
  5. #include <ostream>
  6. LoadingScreen::LoadingScreen()
  7. {
  8. points = 0;
  9. }
  10. LoadingScreen::~LoadingScreen()
  11. {
  12. }
  13. void LoadingScreen::draw()
  14. {
  15. glMatrixMode(GL_PROJECTION);
  16. glLoadIdentity();
  17. glOrtho(0, CrystalPoint::width, CrystalPoint::height, 0, -10, 10);
  18. glMatrixMode(GL_MODELVIEW);
  19. glLoadIdentity();
  20. glDisable(GL_LIGHTING);
  21. glDisable(GL_DEPTH_TEST);
  22. glDisable(GL_TEXTURE_2D);
  23. glColor4f(0.0f, 0.0f, 0.0f, 1.0f);
  24. glBegin(GL_QUADS);
  25. glVertex2f(0, 0);
  26. glVertex2f(0, CrystalPoint::height);
  27. glVertex2f(CrystalPoint::width, CrystalPoint::height);
  28. glVertex2f(CrystalPoint::width, 0);
  29. glEnd();
  30. glColor4f(1.0f, 1.0f, 0.0f, 1.0f);
  31. std::ostringstream oss;
  32. oss << loading << points << std::endl;
  33. Util::glutBitmapString(oss.str(),
  34. CrystalPoint::width / 2 - Util::glutTextWidth(oss.str()),
  35. CrystalPoint::height / 2 - 7);
  36. glEnable(GL_LIGHTING);
  37. glEnable(GL_DEPTH_TEST);
  38. glutSwapBuffers();
  39. }
  40. void LoadingScreen::rise()
  41. {
  42. points++;
  43. draw();
  44. }