softwareRenderer.h 853 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #ifndef SRENDERER_H
  2. #define SRENDERER_H
  3. #include "displayManager.h"
  4. #include "rasterizer.h"
  5. #include "buffer.h"
  6. class SoftwareRenderer {
  7. public:
  8. //Dummy Constructor / Destructor
  9. SoftwareRenderer();
  10. ~SoftwareRenderer();
  11. //Creates all buffers and initializes all sub-programs needed
  12. //For rendering
  13. bool startUp(DisplayManager &displayManager);
  14. void shutDown();
  15. //void render(Model *models, Matrix4 &mat);
  16. void render();
  17. private:
  18. //Buffer methods
  19. bool createBuffers();
  20. void clearBuffers();
  21. DisplayManager * screen;
  22. Buffer<float> * zBuffer;
  23. Buffer<Uint32> * pixelBuffer;
  24. Rasterizer *raster;
  25. //Culling
  26. //bool frustrumCulling(Model *model, Matrix4 &viewMatrix);
  27. };
  28. #endif