OpenGLRenderer.cpp 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #include "OpenGLRenderer.h"
  2. #include "../Unix/GameCodeStd.h"
  3. #include <SDL3/SDL.h>
  4. #include <GL/glew.h>
  5. #include <imgui.h>
  6. #include <imgui_impl_sdl3.h>
  7. #include <imgui_impl_opengl3.h>
  8. void OpenGLRenderer46::VSetBackgroundColor(unsigned char bgA, unsigned char bgR, unsigned char bgG, unsigned char bgB)
  9. {
  10. glClearColor(
  11. (float) bgR / 255.0f,
  12. (float) bgG / 255.0f,
  13. (float) bgB / 255.0f,
  14. (float) bgA / 255.0f
  15. );
  16. }
  17. int OpenGLRenderer46::VOnRestore()
  18. {
  19. return 0;
  20. }
  21. void OpenGLRenderer46::VShutdown()
  22. {
  23. }
  24. bool OpenGLRenderer46::VPreRender()
  25. {
  26. // clear screen
  27. glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  28. // Start the Dear ImGui frame
  29. ImGui_ImplOpenGL3_NewFrame();
  30. ImGui_ImplSDL3_NewFrame();
  31. ImGui::NewFrame();
  32. return true;
  33. }
  34. bool OpenGLRenderer46::VPostRender()
  35. {
  36. // Rendering
  37. ImGui::Render();
  38. // update the screen
  39. ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData());
  40. SDL_GL_SwapWindow(g_pApp->m_Window);
  41. return true;
  42. }
  43. std::shared_ptr<IRenderState> OpenGLRenderer46::VPrepareAlphaPass()
  44. {
  45. return std::shared_ptr<IRenderState>();
  46. }
  47. std::shared_ptr<IRenderState> OpenGLRenderer46::VPrepareSkyBoxPass()
  48. {
  49. return std::shared_ptr<IRenderState>();
  50. }
  51. void OpenGLRenderer46::VSetWorldTransform(glm::mat4 m)
  52. {
  53. // TODO(munnellg) - implement
  54. }
  55. void OpenGLRenderer46::VSetViewTransform(glm::mat4 m)
  56. {
  57. // TODO(munnellg) - implement
  58. }
  59. void OpenGLRenderer46::VSetProjectionTransform(glm::mat4 m)
  60. {
  61. // TODO(munnellg) - implement
  62. }