Class LegacyAdvancedFboImpl
java.lang.Object
foundry.veil.impl.client.render.framebuffer.AdvancedFboImpl
foundry.veil.impl.client.render.framebuffer.LegacyAdvancedFboImpl
- All Implemented Interfaces:
AdvancedFbo,AutoCloseable,org.lwjgl.system.NativeResource
Legacy implementation of
AdvancedFbo.-
Nested Class Summary
Nested classes/interfaces inherited from class foundry.veil.impl.client.render.framebuffer.AdvancedFboImpl
AdvancedFboImpl.WrapperNested classes/interfaces inherited from interface foundry.veil.api.client.render.framebuffer.AdvancedFbo
AdvancedFbo.Builder -
Field Summary
Fields inherited from class foundry.veil.impl.client.render.framebuffer.AdvancedFboImpl
clearMask, colorAttachments, currentDrawBuffers, debugLabel, depthAttachment, drawBuffers, ERRORS, hasStencil, height, id, MAIN_WRAPPER, width, wrapper -
Constructor Summary
ConstructorsConstructorDescriptionLegacyAdvancedFboImpl(int width, int height, AdvancedFboAttachment[] colorAttachments, @Nullable AdvancedFboAttachment depthAttachment, @Nullable String debugLabel) -
Method Summary
Modifier and TypeMethodDescriptionvoidclear(float red, float green, float blue, float alpha, float depth, int clearMask, int... buffers) Clears the specified buffers.voidcreate()Creates the framebuffer and all attachments.voiddrawBuffers(int... buffers) Sets the buffers to draw to.voidResets the draw buffers to enable all buffers.voidresolveToAdvancedFbo(AdvancedFbo target, int mask, int filtering) Resolves this framebuffer to the provided advanced framebuffer as the target.voidresolveToFbo(int id, int width, int height, int mask, int filtering) Resolves this framebuffer to the framebuffer with the specified id as the target.voidresolveToRenderTarget(com.mojang.blaze3d.pipeline.RenderTarget target, int mask, int filtering) Resolves this framebuffer to the provided minecraft framebuffer as the target.voidsetColorAttachmentTexture(int attachment, int textureId, int layer) Updates the texture attachment reference for the specified slot.voidsetDepthAttachmentTexture(int textureId, int layer) Updates the depth texture attachment reference for the specified slot.Methods inherited from class foundry.veil.impl.client.render.framebuffer.AdvancedFboImpl
bind, bindDraw, copy, free, getClearMask, getColorAttachment, getColorAttachments, getDebugLabel, getDepthAttachment, getDrawBuffers, getHeight, getId, getWidth, hasColorAttachment, hasDepthAttachment, hasStencilAttachment, toRenderTargetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface foundry.veil.api.client.render.framebuffer.AdvancedFbo
bindRead, clear, clear, clear, clear, clear, clear, getColorRenderAttachment, getColorTextureAttachment, getDepthRenderAttachment, getDepthTextureAttachment, isColorRenderAttachment, isColorTextureAttachment, isDepthMutableTextureAttachment, isDepthRenderAttachment, isDepthTextureAttachment, isMutableColorTextureAttachment, resolveToAdvancedFbo, resolveToRenderTarget, resolveToScreen, resolveToScreen, setColorAttachmentTexture, setDepthAttachmentTextureMethods inherited from interface org.lwjgl.system.NativeResource
close
-
Constructor Details
-
LegacyAdvancedFboImpl
public LegacyAdvancedFboImpl(int width, int height, AdvancedFboAttachment[] colorAttachments, @Nullable @Nullable AdvancedFboAttachment depthAttachment, @Nullable @Nullable String debugLabel)
-
-
Method Details
-
create
public void create()Description copied from interface:AdvancedFboCreates the framebuffer and all attachments. -
clear
public void clear(float red, float green, float blue, float alpha, float depth, int clearMask, int... buffers) Description copied from interface:AdvancedFboClears the specified buffers.- Parameters:
red- The red clear valuegreen- The green clear valueblue- The blue clear valuealpha- The alpha clear valuedepth- The depth to clear the framebuffer withclearMask- The buffers to clearbuffers- The color buffers to clear
-
resetDrawBuffers
public void resetDrawBuffers()Description copied from interface:AdvancedFboResets the draw buffers to enable all buffers. -
drawBuffers
public void drawBuffers(int... buffers) Description copied from interface:AdvancedFboSets the buffers to draw to.- Parameters:
buffers- The texture units of the color buffers to enable
-
resolveToFbo
public void resolveToFbo(int id, int width, int height, int mask, int filtering) Description copied from interface:AdvancedFboResolves this framebuffer to the framebuffer with the specified id as the target.- Parameters:
id- The id of the framebuffer to copy intowidth- The width of the framebuffer being copied intoheight- The height of the framebuffer being copied intomask- The buffers to copy into the provided framebufferfiltering- The filter to use if this framebuffer and the provided framebuffer are different sizes
-
resolveToAdvancedFbo
Description copied from interface:AdvancedFboResolves this framebuffer to the provided advanced framebuffer as the target.- Parameters:
target- The target framebuffer to copy data intomask- The buffers to copy into the provided framebufferfiltering- The filter to use if this framebuffer and the provided framebuffer are different sizes
-
resolveToRenderTarget
public void resolveToRenderTarget(com.mojang.blaze3d.pipeline.RenderTarget target, int mask, int filtering) Description copied from interface:AdvancedFboResolves this framebuffer to the provided minecraft framebuffer as the target.- Parameters:
target- The target framebuffer to copy data intomask- The buffers to copy into the provided framebufferfiltering- The filter to use if this framebuffer and the provided framebuffer are different sizes
-
setColorAttachmentTexture
public void setColorAttachmentTexture(int attachment, int textureId, int layer) Description copied from interface:AdvancedFboUpdates the texture attachment reference for the specified slot. if the attachment is not known to be an
AdvancedFboMutableTextureAttachment, useAdvancedFbo.isMutableColorTextureAttachment(int)before calling this.- Parameters:
attachment- The attachment to modifytextureId- The id of the texture to draw intolayer- The texture layer to attach. For cubemaps this is the attachment face
-
setDepthAttachmentTexture
public void setDepthAttachmentTexture(int textureId, int layer) Description copied from interface:AdvancedFboUpdates the depth texture attachment reference for the specified slot. If the attachment is not known to be an
AdvancedFboMutableTextureAttachment, useAdvancedFbo.isMutableColorTextureAttachment(int)before calling this.- Parameters:
textureId- The id of the texture to draw intolayer- The texture layer to attach. For cubemaps this is the attachment face
-