15 virtual void Invalidate()
override;
16 virtual int ReadPixel(
const uint32_t AttachmentIndex,
const int PosX,
const int PosY)
override;
17 virtual void ClearAttachment(uint32_t AttachmentIndex,
int value)
override;
18 virtual void Clear()
override;
19 virtual uint32_t GetColorAttachmentRendererID(uint32_t Index = 0)
const override;
21 virtual void Resize(
const uint32_t NewWidth,
const uint32_t NewHeight,
bool bForceRecreate =
false)
override;
22 virtual void AddResizeCallback(
const FResizeCallback& InFunction)
override;
26 virtual size_t GetColorAttachmentCount()
const override;
28 FORCEINLINE
virtual bool HasDepthAttachment()
const override
30 return (m_DepthAttachment >= 0);
33 virtual void BindTexture(
const uint32_t AttachmentIndex = 0,
const uint32_t Slot = 0)
const override;
34 virtual void Bind()
const override;
35 virtual void Unbind()
const override;
39 return m_Specification;
42 FORCEINLINE
virtual uint32_t GetWidth()
const override {
return m_Width; }
43 FORCEINLINE
virtual uint32_t GetHeight()
const override {
return m_Height; }
44 FORCEINLINE
virtual uint64_t GetSize()
const override {
return (m_Width * m_Height); }
46 FORCEINLINE
virtual LRendererID GetRendererID()
const override {
return RendererID; }
47 FORCEINLINE
virtual LRendererID& GetRendererID()
override {
return RendererID; }
49 static void TargetSwapChain();
58 unsigned int m_TextureAttachment0 = -1;
59 unsigned int m_TextureAttachment1 = -1;
60 unsigned int m_DepthAttachment = 0;
62 glm::vec4 m_ClearColor{};
63 std::vector<TObjectPtr<LImage2D>> m_ColorAttachments{};
64 std::vector<uint32_t> m_ColorAttachmentRendererIDs{};
68 std::vector<FFramebufferTextureSpecification> m_ColorAttachmentSpecifications{};
Definition Framebuffer.h:40