33#ifndef DVD_RENDER_TARGET_H_
34#define DVD_RENDER_TARGET_H_
73 [[nodiscard]]
virtual bool create();
79 [[nodiscard]]
U8 getSampleCount() const noexcept;
82 bool resize(
U16 width,
U16 height);
84 bool updateSampleCount(
U8 newSampleCount);
87 [[nodiscard]]
U16 getWidth() const noexcept;
88 [[nodiscard]]
U16 getHeight() const noexcept;
89 [[nodiscard]]
vec2<
U16> getResolution() const noexcept;
90 F32& depthClearValue() noexcept;
92 [[nodiscard]] const
Str<64>& name() const noexcept;
97 [[nodiscard]]
bool autoResolveAttachment(
RTAttachment* att) const;
102 RTAttachment_uptr _attachments[RT_MAX_ATTACHMENT_COUNT]{};
103 bool _attachmentsUsed[RT_MAX_ATTACHMENT_COUNT] = {};
104 bool _attachmentsAutoResolve[RT_MAX_ATTACHMENT_COUNT] = {};
Rough around the edges Adapter pattern abstracting the actual rendering API and access to the GPU.
Utility class that adds basic GUID management to objects.
Handle console commands that start with a forward slash.
eastl::fixed_vector< ExternalRTAttachmentDescriptor, RT_MAX_ATTACHMENT_COUNT, false > ExternalRTAttachmentDescriptors
RTAttachmentType
This enum is used when creating render targets to define the channel that the texture will attach to.
eastl::fixed_vector< InternalRTAttachmentDescriptor, RT_MAX_ATTACHMENT_COUNT, false > InternalRTAttachmentDescriptors
constexpr RenderTargetID INVALID_RENDER_TARGET_ID
ExternalRTAttachmentDescriptors _externalAttachments
InternalRTAttachmentDescriptors _attachments