40 bool immutable_ =
false;
45 bool enabled_srgb_ =
false;
66 void bind(
bool enabled_srgb)
override;
71 bool check(
char err_out[256])
override;
74 const float clear_col[4],
76 uint clear_stencil)
override;
77 void clear_multi(
const float (*clear_cols)[4])
override;
80 const void *clear_value)
override;
95 void *r_data)
override;
105 int dst_offset_y)
override;
111 void update_attachments();
112 void update_drawbuffers();
114 MEM_CXX_CLASS_ALLOC_FUNCS(
"GLFrameBuffer");
123#define ATTACHMENT(X) \
142 return GL_COLOR_ATTACHMENT0;
Read Guarded memory(de)allocation.
SIMD_FORCE_INLINE const btScalar & w() const
Return the w value.
FrameBuffer(const char *name)
bool check(char err_out[256]) override
void attachment_set_loadstore_op(GPUAttachmentType type, GPULoadStore ls) override
void clear(GPUFrameBufferBits buffers, const float clear_col[4], float clear_depth, uint clear_stencil) override
void blit_to(GPUFrameBufferBits planes, int src_slot, FrameBuffer *dst, int dst_slot, int dst_offset_x, int dst_offset_y) override
void clear_multi(const float(*clear_cols)[4]) override
void subpass_transition_impl(const GPUAttachmentState depth_attachment_state, Span< GPUAttachmentState > color_attachment_states) override
GLFrameBuffer(const char *name)
void bind(bool enabled_srgb) override
void clear_attachment(GPUAttachmentType type, eGPUDataFormat data_format, const void *clear_value) override
#define GPU_FB_MAX_COLOR_ATTACHMENT
ccl_device_inline float2 mask(const MaskType mask, const float2 a)
static GLenum to_gl(const GPUAttachmentType type)