35 virtual void InitTexture(
int width = 1280,
int height = 720) = 0;
54 void Clear()
override;
78 void Clear()
override;
137 std::unique_ptr<T> fb = std::make_unique<T>();
Definition: framebuffer.h:72
unsigned int screenTexture
Definition: framebuffer.h:96
cqsp::engine::Mesh & GetMeshOutput() override
Definition: framebuffer.h:86
AAFrameBufferRenderer()
Definition: framebuffer.h:74
void BeginDraw() override
Definition: framebuffer.cpp:161
void FreeBuffer()
Definition: framebuffer.cpp:167
void Clear() override
Definition: framebuffer.cpp:154
void EndDraw() override
Definition: framebuffer.cpp:163
void SetMesh(cqsp::engine::Mesh_t mesh) override
Definition: framebuffer.h:87
void InitTexture(int width, int height) override
Definition: framebuffer.cpp:117
cqsp::asset::ShaderProgram_t buffer_shader
Definition: framebuffer.h:98
int width
Definition: framebuffer.h:91
int height
Definition: framebuffer.h:92
unsigned int framebuffer
Definition: framebuffer.h:94
unsigned int intermediateFBO
Definition: framebuffer.h:95
void RenderBuffer() override
Definition: framebuffer.cpp:174
cqsp::engine::Mesh_t mesh_output
Definition: framebuffer.h:99
void NewFrame(const Window &window) override
Definition: framebuffer.cpp:191
void Free() override
Definition: framebuffer.cpp:165
unsigned int mscat
Definition: framebuffer.h:97
~AAFrameBufferRenderer()
Definition: framebuffer.cpp:115
void SetShader(cqsp::asset::ShaderProgram_t shader) override
Definition: framebuffer.h:88
Definition: framebuffer.h:48
void SetShader(cqsp::asset::ShaderProgram_t shader) override
Definition: framebuffer.h:62
FramebufferRenderer()
Definition: framebuffer.h:50
cqsp::engine::Mesh & GetMeshOutput() override
Definition: framebuffer.h:61
void Clear() override
Definition: framebuffer.cpp:65
void BeginDraw() override
Definition: framebuffer.cpp:70
cqsp::engine::Mesh_t mesh_output
Definition: framebuffer.h:69
void EndDraw() override
Definition: framebuffer.cpp:75
void FreeBuffer()
Definition: framebuffer.cpp:96
void SetMesh(cqsp::engine::Mesh_t mesh) override
Definition: framebuffer.h:60
void Free() override
Definition: framebuffer.cpp:94
void RenderBuffer() override
Definition: framebuffer.cpp:83
unsigned int colorbuffer
Definition: framebuffer.h:67
void InitTexture(int width, int height) override
Definition: framebuffer.cpp:39
cqsp::asset::ShaderProgram_t buffer_shader
Definition: framebuffer.h:68
void NewFrame(const Window &window) override
Definition: framebuffer.cpp:101
unsigned int framebuffer
Definition: framebuffer.h:66
~FramebufferRenderer()
Definition: framebuffer.cpp:37
Interface for framebuffer renderers.
Definition: framebuffer.h:31
virtual void InitTexture(int width=1280, int height=720)=0
virtual cqsp::engine::Mesh & GetMeshOutput()=0
virtual void SetMesh(cqsp::engine::Mesh_t)=0
virtual void SetShader(cqsp::asset::ShaderProgram_t shader)=0
virtual void BeginDraw()=0
virtual void RenderBuffer()=0
virtual ~IFramebuffer()
Definition: framebuffer.h:33
virtual void NewFrame(const Window &window)=0
Renders a series of framebuffers onto screen. This is a relatively simple way of allowing organizatio...
Definition: framebuffer.h:133
void EndDraw(int layer)
Definition: framebuffer.cpp:207
void NewFrame(const cqsp::engine::Window &window)
Definition: framebuffer.cpp:223
void InitFramebuffer(IFramebuffer *buffer, cqsp::asset::ShaderProgram_t shader, const cqsp::engine::Window &window)
Definition: framebuffer.cpp:232
int AddLayer(asset::ShaderProgram_t shader, const engine::Window &window)
Definition: framebuffer.h:136
void BeginDraw(int layer)
Definition: framebuffer.cpp:205
int GetLayerCount()
Definition: framebuffer.cpp:230
std::vector< std::unique_ptr< IFramebuffer > > framebuffers
Definition: framebuffer.h:152
void DrawAllLayers()
Definition: framebuffer.cpp:209
IFramebuffer * GetFrameBuffer(int layer)
Definition: framebuffer.h:149
The window handles the initialization of the callbacks, and all the input and output....
Definition: window.h:25
std::shared_ptr< ShaderProgram > ShaderProgram_t
The preferred way of using a shader program.
Definition: shader.h:112
std::shared_ptr< Mesh > Mesh_t
Definition: mesh.h:44
When adding assets, it is extremely crucial that you read cqsp::asset::AssetLoader::LoadResources to ...
Definition: clientctx.h:21