Class BufferBuilder

java.lang.Object
com.mojang.blaze3d.vertex.DefaultColorVertexBuilder
net.minecraft.client.renderer.BufferBuilder
All Implemented Interfaces:
IVertexBuilder, IVertexConsumer, IForgeVertexBuilder

public class BufferBuilder extends DefaultColorVertexBuilder implements IVertexConsumer
  • Field Details

    • LOGGER

      private static final org.apache.logging.log4j.Logger LOGGER
    • buffer

      private ByteBuffer buffer
    • vertexCounts

      private final List<BufferBuilder.DrawState> vertexCounts
    • lastRenderedCountIndex

      private int lastRenderedCountIndex
    • totalRenderedBytes

      private int totalRenderedBytes
    • nextElementByte

      private int nextElementByte
    • totalUploadedBytes

      private int totalUploadedBytes
    • vertices

      private int vertices
    • currentElement

      @Nullable private VertexFormatElement currentElement
    • elementIndex

      private int elementIndex
    • mode

      private int mode
    • format

      private VertexFormat format
    • fastFormat

      private boolean fastFormat
    • fullFormat

      private boolean fullFormat
    • building

      private boolean building
  • Constructor Details

    • BufferBuilder

      public BufferBuilder(int p_i46275_1_)
  • Method Details

    • ensureVertexCapacity

      protected void ensureVertexCapacity()
    • ensureCapacity

      private void ensureCapacity(int p_181670_1_)
    • roundUp

      private static int roundUp(int p_216566_0_)
    • sortQuads

      public void sortQuads(float p_181674_1_, float p_181674_2_, float p_181674_3_)
    • limitToVertex

      private void limitToVertex(FloatBuffer p_227829_1_, int p_227829_2_)
    • getState

      public BufferBuilder.State getState()
    • getQuadDistanceFromPlayer

      private static float getQuadDistanceFromPlayer(FloatBuffer p_181665_0_, float p_181665_1_, float p_181665_2_, float p_181665_3_, int p_181665_4_, int p_181665_5_)
    • restoreState

      public void restoreState(BufferBuilder.State p_178993_1_)
    • begin

      public void begin(int p_181668_1_, VertexFormat p_181668_2_)
    • switchFormat

      private void switchFormat(VertexFormat p_227828_1_)
    • end

      public void end()
    • putByte

      public void putByte(int p_225589_1_, byte p_225589_2_)
      Specified by:
      putByte in interface IVertexConsumer
    • putShort

      public void putShort(int p_225591_1_, short p_225591_2_)
      Specified by:
      putShort in interface IVertexConsumer
    • putFloat

      public void putFloat(int p_225590_1_, float p_225590_2_)
      Specified by:
      putFloat in interface IVertexConsumer
    • endVertex

      public void endVertex()
      Specified by:
      endVertex in interface IVertexBuilder
    • nextElement

      public void nextElement()
      Specified by:
      nextElement in interface IVertexConsumer
    • color

      public IVertexBuilder color(int p_225586_1_, int p_225586_2_, int p_225586_3_, int p_225586_4_)
      Specified by:
      color in interface IVertexBuilder
      Specified by:
      color in interface IVertexConsumer
    • vertex

      public void vertex(float p_225588_1_, float p_225588_2_, float p_225588_3_, float p_225588_4_, float p_225588_5_, float p_225588_6_, float p_225588_7_, float p_225588_8_, float p_225588_9_, int p_225588_10_, int p_225588_11_, float p_225588_12_, float p_225588_13_, float p_225588_14_)
      Specified by:
      vertex in interface IVertexBuilder
    • popNextBuffer

      public com.mojang.datafixers.util.Pair<BufferBuilder.DrawState,ByteBuffer> popNextBuffer()
    • clear

      public void clear()
    • discard

      public void discard()
    • currentElement

      public VertexFormatElement currentElement()
      Specified by:
      currentElement in interface IVertexConsumer
    • building

      public boolean building()
    • putBulkData

      public void putBulkData(ByteBuffer buffer)
    • getVertexFormat

      public VertexFormat getVertexFormat()