1#ifndef SEAD_FRAME_BUFFER_H_
2#define SEAD_FRAME_BUFFER_H_
4#include <gfx/seadColor.h>
5#include <math/seadBoundBox.h>
6#include <math/seadVector.h>
7#include <prim/seadRuntimeTypeInfo.h>
30 ,
mPhysicalArea(physical_x, physical_y, physical_x + physical_w, physical_y + physical_h)
36 ,
mPhysicalArea(physical_x, physical_y, physical_x + f32(physical_w), physical_y + f32(physical_h))
84static_assert(
sizeof(
LogicalFrameBuffer) == 0x1C,
"sead::LogicalFrameBuffer size mismatch");
118 virtual void clear(u32 clr_flag,
const Color4f& color, f32 depth, u32 stencil)
const = 0;
128static_assert(
sizeof(
FrameBuffer) == 0x1C,
"sead::FrameBuffer size mismatch");
151static_assert(
sizeof(
DisplayBuffer) == 0xC,
"sead::DisplayBuffer size mismatch");
Definition seadFrameBuffer.h:134
DisplayBuffer()
Definition seadFrameBuffer.h:138
f32 mHeight
Definition seadFrameBuffer.h:148
virtual void initializeImpl_(sead::Heap *heap)=0
f32 mWidth
Definition seadFrameBuffer.h:147
Definition seadFrameBuffer.h:90
void bind() const
Definition seadFrameBuffer.cpp:9
FrameBuffer(const Vector2f &virtual_size, const BoundBox2f &physical_area)
Definition seadFrameBuffer.h:99
virtual void bindImpl_() const =0
virtual void clearMRT(u32 target, const Color4f &color) const
Definition seadFrameBuffer.cpp:5
virtual void clear(u32 clr_flag, const Color4f &color, f32 depth, u32 stencil) const =0
FrameBuffer()
Definition seadFrameBuffer.h:94
virtual void copyToDisplayBuffer(const DisplayBuffer *display_buffer) const
Definition seadFrameBuffer.h:114
FrameBuffer(const Vector2f &virtual_size, f32 physical_x, f32 physical_y, f32 physical_w, f32 physical_h)
Definition seadFrameBuffer.h:104
Definition seadFrameBuffer.h:12
void setPhysicalArea(f32 x, f32 y, f32 w, f32 h)
Definition seadFrameBuffer.h:69
const Vector2f & getVirtualSize() const
Definition seadFrameBuffer.h:44
void setVirtualSize(const Vector2f &virtual_size)
Definition seadFrameBuffer.h:59
void setVirtualSize(f32 x, f32 y)
Definition seadFrameBuffer.h:54
BoundBox2f mPhysicalArea
Definition seadFrameBuffer.h:81
LogicalFrameBuffer(const Vector2f &virtual_size, const BoundBox2f &physical_area)
Definition seadFrameBuffer.h:22
const BoundBox2f & getPhysicalArea() const
Definition seadFrameBuffer.h:49
virtual ~LogicalFrameBuffer()
Definition seadFrameBuffer.h:40
Vector2f mVirtualSize
Definition seadFrameBuffer.h:80
LogicalFrameBuffer(const Vector2f &virtual_size, f32 physical_x, f32 physical_y, f32 physical_w, f32 physical_h)
Definition seadFrameBuffer.h:28
LogicalFrameBuffer()
Definition seadFrameBuffer.h:16
void setPhysicalArea(const BoundBox2f &ph_size)
Definition seadFrameBuffer.h:64
Definition seadAssert.h:44
Vector2< f32 > Vector2f
Definition seadVector.h:238
BoundBox2< f32 > BoundBox2f
Definition seadBoundBox.h:187
#define SEAD_RTTI_OVERRIDE(CLASS, BASE)
Definition seadRuntimeTypeInfo.h:96
#define SEAD_RTTI_BASE(CLASS)
Definition seadRuntimeTypeInfo.h:75