16#ifndef AEONGAMES_FRAMEBUFFER_H
17#define AEONGAMES_FRAMEBUFFER_H
22#pragma warning( push )
23#pragma warning( disable : PROTOBUF_WARNINGS )
25#include "framebuffer.pb.h"
29#include "aeongames/Resource.hpp"
42 virtual void LoadFromPBMsg (
const FrameBufferMsg& aFrameBufferMsg ) = 0;
50 virtual void Resize ( uint32_t aWidth, uint32_t aHeight ) = 0;
Abstract interface for off-screen render target (frame buffer) resources.
virtual void Unload()=0
Release all resources held by this frame buffer.
virtual void Unbind()=0
Unbind this frame buffer, restoring the previous render target.
virtual void LoadFromPBMsg(const FrameBufferMsg &aFrameBufferMsg)=0
Initialize the frame buffer from a protobuf message.
virtual void Bind()=0
Bind this frame buffer as the current render target.
virtual void Resize(uint32_t aWidth, uint32_t aHeight)=0
Resize the frame buffer to new dimensions.
Base class for loadable engine resources.
<- This is here just for the literals