From bde6f5eed1cec3639e5c81d1e5ee34ecf3fe7486 Mon Sep 17 00:00:00 2001 From: reduz Date: Thu, 24 Jun 2021 10:58:36 -0300 Subject: Implement Framebuffer Subpass support * Required for better optimizing mobile platforms * Will be used by the Vulkan mobile renderer. --- doc/classes/RDFramebufferPass.xml | 35 +++++++++++++++++++++++++++ doc/classes/RenderingDevice.xml | 50 ++++++++++++++++++++++++++++++++++++++- 2 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 doc/classes/RDFramebufferPass.xml (limited to 'doc') diff --git a/doc/classes/RDFramebufferPass.xml b/doc/classes/RDFramebufferPass.xml new file mode 100644 index 0000000000..c26c41f93f --- /dev/null +++ b/doc/classes/RDFramebufferPass.xml @@ -0,0 +1,35 @@ + + + + Framebuffer pass attachment description. + + + This class contains the list of attachment descriptions for a framebuffer pass. Each points with an index to a previously supplied list of texture attachments. + Multipass framebuffers can optimize some configurations in mobile, on desktop they provide little to no advantage. + + + + + + + + Color attachments in order starting from 0. If this attachment is not used by the shader, pass ATTACHMENT_UNUSED to skip. + + + Depth attachment. ATTACHMENT_UNUSED should be used if no depth buffer is required for this pass. + + + Used for multipass framebuffers (more than one render pass). Converts an attachment to an input. Make sure to also supply it properly in the [RDUniform] for the uniform set. + + + Attachments to preserve in this pass (otherwise they are erased). + + + If the color attachments are multisampled, non-multisampled resolve attachments can be provided. + + + + + + + diff --git a/doc/classes/RenderingDevice.xml b/doc/classes/RenderingDevice.xml index dc56e6fd5d..b66b945025 100644 --- a/doc/classes/RenderingDevice.xml +++ b/doc/classes/RenderingDevice.xml @@ -341,13 +341,29 @@ + + + + + + + + + + + + + + - + + + @@ -363,11 +379,27 @@ + + + + + + + + + + + + + + + + @@ -379,11 +411,25 @@ + + + + + + + + + + + + + + @@ -524,6 +570,8 @@ + + -- cgit v1.2.3