Class OitFramebuffer
java.lang.Object
dev.engine_room.flywheel.backend.engine.indirect.OitFramebuffer
-
Field Summary
FieldsModifier and TypeFieldDescriptionintstatic final int[]static final float[]intstatic final int[]static final int[]intintstatic final int[] -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidSample the transmittance function and accumulate.voidComposite the accumulated luminance onto the main framebuffer.voiddelete()voidRender out the min and max depth per fragment.voidprepare()Set up the framebuffer.voidIf any fragment has its transmittance fall off to zero, search the transmittance function to determine at what depth that occurs and write out to the depth buffer.voidGenerate the coefficients to the transmittance function.
-
Field Details
-
CLEAR_TO_ZERO
public static final float[] CLEAR_TO_ZERO -
DEPTH_RANGE_DRAW_BUFFERS
public static final int[] DEPTH_RANGE_DRAW_BUFFERS -
RENDER_TRANSMITTANCE_DRAW_BUFFERS
public static final int[] RENDER_TRANSMITTANCE_DRAW_BUFFERS -
ACCUMULATE_DRAW_BUFFERS
public static final int[] ACCUMULATE_DRAW_BUFFERS -
DEPTH_ONLY_DRAW_BUFFERS
public static final int[] DEPTH_ONLY_DRAW_BUFFERS -
fbo
public int fbo -
depthBounds
public int depthBounds -
coefficients
public int coefficients -
accumulate
public int accumulate
-
-
Constructor Details
-
OitFramebuffer
-
-
Method Details
-
prepare
public void prepare()Set up the framebuffer. -
depthRange
public void depthRange()Render out the min and max depth per fragment. -
renderTransmittance
public void renderTransmittance()Generate the coefficients to the transmittance function. -
renderDepthFromTransmittance
public void renderDepthFromTransmittance()If any fragment has its transmittance fall off to zero, search the transmittance function to determine at what depth that occurs and write out to the depth buffer. -
accumulate
public void accumulate()Sample the transmittance function and accumulate. -
composite
public void composite()Composite the accumulated luminance onto the main framebuffer. -
delete
public void delete()
-