Class FramebufferDesc

java.lang.Object
icyllis.arc3d.engine.FramebufferDesc

@Immutable public final class FramebufferDesc extends Object
Descriptor to create a framebuffer.
  • Field Details

    • FLAG_GL_WRAP_DEFAULT_FB

      @Internal public static final int FLAG_GL_WRAP_DEFAULT_FB
      This is a OpenGL only flag. It tells us that the internal render target wraps the OpenGL default framebuffer (id=0) that preserved by window. RT only.
      See Also:
    • FLAG_MANUAL_MSAA_RESOLVE

      @Internal public static final int FLAG_MANUAL_MSAA_RESOLVE
      This means the render target is multi-sampled, and internally holds a non-msaa image for resolving into. The render target resolves itself by blit-ting into this internal image. (It might or might not have the internal image access, but if it does, we always resolve the render target before accessing this image's data.) RT only.
      See Also:
    • FLAG_VK_WRAP_SECONDARY_CB

      @Internal public static final int FLAG_VK_WRAP_SECONDARY_CB
      This is a Vulkan only flag. It tells us that the internal render target is wrapping a raw Vulkan secondary command buffer. RT only.
      See Also:
    • mColorAttachments

      @Nonnull public final FramebufferDesc.ColorAttachmentDesc[] mColorAttachments
    • NO_COLOR_ATTACHMENTS

      public static final FramebufferDesc.ColorAttachmentDesc[] NO_COLOR_ATTACHMENTS
    • mDepthStencilAttachment

      @Nonnull public final FramebufferDesc.DepthStencilAttachmentDesc mDepthStencilAttachment
    • NO_DEPTH_STENCIL_ATTACHMENT

      public static final FramebufferDesc.DepthStencilAttachmentDesc NO_DEPTH_STENCIL_ATTACHMENT
    • mWidth

      public final int mWidth
      If there are any attachments, then framebuffer bounds must be the intersection of all attachment bounds.
    • mHeight

      public final int mHeight
      If there are any attachments, then framebuffer bounds must be the intersection of all attachment bounds.
    • mSampleCount

      public final int mSampleCount
    • mFramebufferFlags

      public int mFramebufferFlags
  • Constructor Details

  • Method Details

    • isStale

      public boolean isStale()
      Should the framebuffer keyed by this be deleted now? Used to delete framebuffers if one of the attachments has already been deleted.
      Returns:
      true to delete, false to keep
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object