Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.09 KB | None | 0 0
  1. #include "AppClass.h"
  2. void Application::InitVariables(void)
  3. {
  4. //init the mesh
  5. m_pMesh = new MyMesh();
  6. m_pMesh->GenerateCube(1.0f, C_RED);
  7.  
  8. }
  9. void Application::Update(void)
  10. {
  11. //Update the system so it knows how much time has passed since the last call
  12. m_pSystem->Update();
  13.  
  14. //Is the arcball active?
  15. ArcBall();
  16.  
  17. //Is the first person camera active?
  18. CameraRotation();
  19. }
  20. void Application::Display(void)
  21. {
  22. // Clear the screen
  23. ClearScreen();
  24.  
  25. matrix4 m4View = m_pCameraMngr->GetViewMatrix();
  26. matrix4 m4Projection = m_pCameraMngr->GetProjectionMatrix();
  27.  
  28. matrix4 m4Scale = glm::scale(IDENTITY_M4, vector3(2.0f,2.0f,2.0f));
  29. static float value = 0.0f;
  30. matrix4 m4Translate = glm::translate(IDENTITY_M4, vector3(value, 2.0f, 3.0f));
  31. value += 0.01f;
  32.  
  33. //matrix4 m4Model = m4Translate * m4Scale;
  34. matrix4 m4Model = m4Scale * m4Translate;
  35.  
  36. m_pMesh->Render(m4Projection, m4View, m4Model);
  37. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(1.0f,-1.0f,0.0f)));
  38. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(1.0f, -2.0f, 0.0f)));
  39. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(0.0f, -2.0f, 0.0f)));
  40. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(2.0f, -2.0f, 0.0f)));
  41. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(3.0f, -2.0f, 0.0f)));
  42. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(4.0f, -2.0f, 0.0f)));
  43. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(5.0f, -2.0f, 0.0f)));
  44. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(6.0f, -2.0f, 0.0f)));
  45. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(5.0f, -1.0f, 0.0f)));
  46. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(6.0f, -0.0f, 0.0f)));
  47. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(-1.0f, -3.0f, 0.0f)));
  48. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(0.0f, -3.0f, 0.0f)));
  49. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(2.0f, -3.0f, 0.0f)));
  50. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(3.0f, -3.0f, 0.0f)));
  51. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(4.0f, -3.0f, 0.0f)));
  52. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(6.0f, -3.0f, 0.0f)));
  53. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(7.0f, -3.0f, 0.0f)));
  54.  
  55. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(-2.0f, -4.0f, 0.0f)));
  56. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(-1.0f, -4.0f, 0.0f)));
  57. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(0.0f, -4.0f, 0.0f)));
  58. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(1.0f, -4.0f, 0.0f)));
  59. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(2.0f, -4.0f, 0.0f)));
  60. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(3.0f, -4.0f, 0.0f)));
  61. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(4.0f, -4.0f, 0.0f)));
  62. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(5.0f, -4.0f, 0.0f)));
  63. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(6.0f, -4.0f, 0.0f)));
  64. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(7.0f, -4.0f, 0.0f)));
  65. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(8.0f, -4.0f, 0.0f)));
  66.  
  67. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(-2.0f, -5.0f, 0.0f)));
  68. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(0.0f, -5.0f, 0.0f)));
  69. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(1.0f, -5.0f, 0.0f)));
  70. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(2.0f, -5.0f, 0.0f)));
  71. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(3.0f, -5.0f, 0.0f)));
  72. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(4.0f, -5.0f, 0.0f)));
  73. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(5.0f, -5.0f, 0.0f)));
  74. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(6.0f, -5.0f, 0.0f)));
  75. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(8.0f, -5.0f, 0.0f)));
  76.  
  77. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(-2.0f, -6.0f, 0.0f)));
  78. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(0.0f, -6.0f, 0.0f)));
  79. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(6.0f, -6.0f, 0.0f)));
  80. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(8.0f, -6.0f, 0.0f)));
  81.  
  82. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(1.0f, -7.0f, 0.0f)));
  83. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(2.0f, -7.0f, 0.0f)));
  84. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(4.0f, -7.0f, 0.0f)));
  85. m_pMesh->Render(m4Projection, m4View, m4Model * glm::translate(IDENTITY_M4, vector3(5.0f, -7.0f, 0.0f)));
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95. // draw a skybox
  96. m_pMeshMngr->AddSkyboxToRenderList();
  97.  
  98. //render list call
  99. m_uRenderCallCount = m_pMeshMngr->Render();
  100.  
  101. //clear the render list
  102. m_pMeshMngr->ClearRenderList();
  103.  
  104. //draw gui
  105. DrawGUI();
  106.  
  107. //end the current frame (internally swaps the front and back buffers)
  108. m_pWindow->display();
  109. }
  110. void Application::Release(void)
  111. {
  112. SafeDelete(m_pMesh);
  113.  
  114. //release GUI
  115. ShutdownGUI();
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement