12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- /*!
- * \file include/Render.h
- * \brief OpenRaider Renderer class
- *
- * \author Mongoose
- * \author xythobuz
- */
-
- #ifndef _RENDER_H_
- #define _RENDER_H_
-
- #include <vector>
- #include <glm/vec2.hpp>
- #include <glm/vec4.hpp>
- #include <glm/gtc/type_precision.hpp>
-
- #include "Room.h"
- #include "TextureManager.h"
-
- enum class RenderMode {
- LoadScreen,
- Solid,
- Wireframe,
- Texture
- };
-
- class Render {
- public:
- static RenderMode getMode();
- static void setMode(RenderMode m);
-
- static void display();
- static void displayUI();
-
- static void clearRoomList();
-
- static void screenShot(const char* filenameBase);
-
- static void drawTexture(float x, float y, float w, float h, glm::vec4 color,
- unsigned int texture, TextureStorage s);
-
- static void setDisplayViewFrustum(bool d) { displayViewFrustum = d; }
- static bool getDisplayViewFrustum() { return displayViewFrustum; }
-
- private:
- static void buildRoomList(int room);
-
- static RenderMode mode;
- static std::vector<Room*> roomList;
-
- static bool displayViewFrustum;
- };
-
- #endif
|