Files
TSE/TSE_GlfwOpenGlImpl/src/RenderTexture.hpp

30 lines
759 B
C++

#pragma once
#include "buffer/FrameBuffer.hpp"
#include "interfaces/IRenderTarget.hpp"
#include "interfaces/ITexture.hpp"
#include "interfaces/IResizeNotifiable.hpp"
namespace TSE::GLFW
{
class RenderTexture : public IRenderTarget, public ITexture, public IResizeNotifiable
{
public:
FrameBuffer buffer;
RenderTexture(Vector2 v);
Vector2 size() const override;
void SetSize(Vector2 v);
float width() const override;
float height() const override;
uint GetTextureId() const override;
void Update() override;
void Bind() override;
void Unbind() override;
void OnResize(float width, float height, IResizable* wnd) override;
};
} // namespace TSE::GLFW