43 bool enabled_srgb_ =
false;
64 void bind(
bool enabled_srgb)
override;
69 bool check(
char err_out[256])
override;
72 const float clear_col[4],
74 uint clear_stencil)
override;
75 void clear_multi(
const float (*clear_cols)[4])
override;
78 const void *clear_value)
override;
90 void *r_data)
override;
100 int dst_offset_y)
override;
106 void update_attachments();
107 void update_drawbuffers();
109 MEM_CXX_CLASS_ALLOC_FUNCS(
"GLFrameBuffer");
118 #define ATTACHMENT(X) \
137 return GL_COLOR_ATTACHMENT0;
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
Read Guarded memory(de)allocation.
SIMD_FORCE_INLINE const btScalar & w() const
Return the w value.
void clear(eGPUFrameBufferBits buffers, const float clear_col[4], float clear_depth, uint clear_stencil) override
bool check(char err_out[256]) override
void read(eGPUFrameBufferBits planes, eGPUDataFormat format, const int area[4], int channel_len, int slot, void *r_data) override
void clear_multi(const float(*clear_cols)[4]) override
GLFrameBuffer(const char *name)
void bind(bool enabled_srgb) override
void attachment_set_loadstore_op(GPUAttachmentType, eGPULoadOp, eGPUStoreOp) override
void clear_attachment(GPUAttachmentType type, eGPUDataFormat data_format, const void *clear_value) override
void blit_to(eGPUFrameBufferBits planes, int src_slot, FrameBuffer *dst, int dst_slot, int dst_offset_x, int dst_offset_y) override
#define GPU_FB_MAX_COLOR_ATTACHMENT
ccl_device_inline float4 mask(const int4 &mask, const float4 &a)
static void area(int d1, int d2, int e1, int e2, float weights[2])
static GLenum to_gl(const GPUAttachmentType type)