Package com.mojang.blaze3d.vertex
Class BufferBuilder
java.lang.Object
com.mojang.blaze3d.vertex.DefaultedVertexConsumer
com.mojang.blaze3d.vertex.BufferBuilder
- All Implemented Interfaces:
BufferVertexConsumer
,VertexConsumer
,IVertexConsumerExtension
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final record
class
static class
-
Field Summary
Modifier and TypeFieldDescriptionprivate ByteBuffer
private boolean
private VertexFormatElement
private int
private boolean
private VertexFormat
private boolean
private static final int
private boolean
private static final org.slf4j.Logger
private VertexFormat.Mode
private int
private int
private int
private VertexSorting
private org.joml.Vector3f[]
private int
Fields inherited from class com.mojang.blaze3d.vertex.DefaultedVertexConsumer
defaultA, defaultB, defaultColorSet, defaultG, defaultR
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
begin
(VertexFormat.Mode p_166780_, VertexFormat p_166781_) (package private) ByteBuffer
bufferSlice
(int p_231170_, int p_231171_) boolean
building()
void
clear()
color
(int p_85692_, int p_85693_, int p_85694_, int p_85695_) void
discard()
end()
void
private void
ensureCapacity
(int p_85723_) private void
private void
private it.unimi.dsi.fastutil.ints.IntConsumer
intConsumer
(int p_231159_, VertexFormat.IndexType p_231160_) boolean
private org.joml.Vector3f[]
void
void
putBulkData
(ByteBuffer buffer) void
putByte
(int p_85686_, byte p_85687_) void
putFloat
(int p_85689_, float p_85690_) void
putShort
(int p_85700_, short p_85701_) private void
putSortedQuadIndices
(VertexFormat.IndexType p_166787_) (package private) void
private void
reset()
void
restoreSortState
(BufferBuilder.SortState p_166776_) private static int
roundUp
(int p_85726_) void
setQuadSorting
(VertexSorting p_277454_) private BufferBuilder.RenderedBuffer
private void
switchFormat
(VertexFormat p_85705_) void
vertex
(float p_85671_, float p_85672_, float p_85673_, float p_85674_, float p_85675_, float p_85676_, float p_85677_, float p_85678_, float p_85679_, int p_85680_, int p_85681_, float p_85682_, float p_85683_, float p_85684_) Methods inherited from class com.mojang.blaze3d.vertex.DefaultedVertexConsumer
defaultColor, unsetDefaultColor
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.mojang.blaze3d.vertex.BufferVertexConsumer
normal, overlayCoords, uv, uv2, uvShort, vertex
Methods inherited from interface net.neoforged.neoforge.client.extensions.IVertexConsumerExtension
applyBakedLighting, applyBakedNormals, misc, putBulkData
Methods inherited from interface com.mojang.blaze3d.vertex.VertexConsumer
color, color, defaultColor, normal, overlayCoords, putBulkData, putBulkData, putBulkData, unsetDefaultColor, uv2, vertex
-
Field Details
-
GROWTH_SIZE
private static final int GROWTH_SIZE- See Also:
-
LOGGER
private static final org.slf4j.Logger LOGGER -
buffer
-
renderedBufferCount
private int renderedBufferCount -
renderedBufferPointer
private int renderedBufferPointer -
nextElementByte
private int nextElementByte -
vertices
private int vertices -
currentElement
-
elementIndex
private int elementIndex -
format
-
mode
-
fastFormat
private boolean fastFormat -
fullFormat
private boolean fullFormat -
building
private boolean building -
sortingPoints
@Nullable private org.joml.Vector3f[] sortingPoints -
sorting
-
indexOnly
private boolean indexOnly
-
-
Constructor Details
-
BufferBuilder
public BufferBuilder(int p_85664_)
-
-
Method Details
-
ensureVertexCapacity
private void ensureVertexCapacity() -
ensureCapacity
private void ensureCapacity(int p_85723_) -
roundUp
private static int roundUp(int p_85726_) -
setQuadSorting
-
getSortState
-
restoreSortState
-
begin
-
switchFormat
-
intConsumer
private it.unimi.dsi.fastutil.ints.IntConsumer intConsumer(int p_231159_, VertexFormat.IndexType p_231160_) -
makeQuadSortingPoints
private org.joml.Vector3f[] makeQuadSortingPoints() -
putSortedQuadIndices
-
isCurrentBatchEmpty
public boolean isCurrentBatchEmpty() -
endOrDiscardIfEmpty
-
end
-
ensureDrawing
private void ensureDrawing() -
storeRenderedBuffer
-
reset
private void reset() -
putByte
public void putByte(int p_85686_, byte p_85687_) - Specified by:
putByte
in interfaceBufferVertexConsumer
-
putShort
public void putShort(int p_85700_, short p_85701_) - Specified by:
putShort
in interfaceBufferVertexConsumer
-
putFloat
public void putFloat(int p_85689_, float p_85690_) - Specified by:
putFloat
in interfaceBufferVertexConsumer
-
endVertex
public void endVertex()- Specified by:
endVertex
in interfaceVertexConsumer
-
nextElement
public void nextElement()- Specified by:
nextElement
in interfaceBufferVertexConsumer
-
color
- Specified by:
color
in interfaceBufferVertexConsumer
- Specified by:
color
in interfaceVertexConsumer
-
vertex
public void vertex(float p_85671_, float p_85672_, float p_85673_, float p_85674_, float p_85675_, float p_85676_, float p_85677_, float p_85678_, float p_85679_, int p_85680_, int p_85681_, float p_85682_, float p_85683_, float p_85684_) - Specified by:
vertex
in interfaceVertexConsumer
-
releaseRenderedBuffer
void releaseRenderedBuffer() -
clear
public void clear() -
discard
public void discard() -
currentElement
- Specified by:
currentElement
in interfaceBufferVertexConsumer
-
building
public boolean building() -
bufferSlice
-
putBulkData
-