Initial Commit
This commit is contained in:
52
src/render/debugrender.h
Normal file
52
src/render/debugrender.h
Normal file
@@ -0,0 +1,52 @@
|
||||
#ifndef DEBUGRENDER_H
|
||||
#define DEBUGRENDER_H
|
||||
|
||||
#include <vector>
|
||||
#include "render_shared.h"
|
||||
|
||||
const int kMaxDebugVBSize = 1024 * 1024 * 2;
|
||||
|
||||
class GPUBuffer;
|
||||
class Shader;
|
||||
|
||||
class DebugRender
|
||||
{
|
||||
public:
|
||||
DebugRender();
|
||||
~DebugRender();
|
||||
|
||||
void Initialize();
|
||||
void Shutdown();
|
||||
|
||||
void DrawAxis(const glm::vec3& vec);
|
||||
void DrawLine(const glm::vec3& from, const glm::vec3& to, const glm::vec3& color);
|
||||
|
||||
void RenderFrame();
|
||||
|
||||
private:
|
||||
|
||||
void DrawLinesInternal();
|
||||
|
||||
private:
|
||||
// Primitives
|
||||
struct Line
|
||||
{
|
||||
glm::vec3 from;
|
||||
glm::vec3 color0;
|
||||
|
||||
glm::vec3 to;
|
||||
glm::vec3 color1;
|
||||
};
|
||||
|
||||
std::vector<Line> m_lines;
|
||||
|
||||
private:
|
||||
GPUBuffer* m_verticesBuffer;
|
||||
Shader* m_shader;
|
||||
};
|
||||
|
||||
extern DebugRender* g_pDebugRender;
|
||||
|
||||
extern bool g_drawDebug;
|
||||
|
||||
#endif // !DEBUGRENDER_H
|
||||
Reference in New Issue
Block a user