Class RenderSystem.ShapeIndexBuffer

java.lang.Object
com.mojang.blaze3d.systems.RenderSystem.ShapeIndexBuffer
Enclosing class:
RenderSystem

@Environment(CLIENT) public static final class RenderSystem.ShapeIndexBuffer extends Object
An index buffer that holds a pre-made indices for a specific shape. If this buffer is not large enough for the required number of indices when this buffer is bound, it automatically grows and fills indices using a given triangulator.
Mappings:
Namespace Name
named com/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer
intermediary com/mojang/blaze3d/systems/RenderSystem$class_5590
official com/mojang/blaze3d/systems/RenderSystem$a
  • Field Details

    • vertexCountInShape

      private final int vertexCountInShape
      Mappings:
      Namespace Name Mixin selector
      named vertexCountInShape Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;vertexCountInShape:I
      intermediary field_27332 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;field_27332:I
      official a Lcom/mojang/blaze3d/systems/RenderSystem$a;a:I
    • vertexCountInTriangulated

      private final int vertexCountInTriangulated
      Mappings:
      Namespace Name Mixin selector
      named vertexCountInTriangulated Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;vertexCountInTriangulated:I
      intermediary field_27333 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;field_27333:I
      official b Lcom/mojang/blaze3d/systems/RenderSystem$a;b:I
    • triangulator

      private final RenderSystem.ShapeIndexBuffer.Triangulator triangulator
      Mappings:
      Namespace Name Mixin selector
      named triangulator Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;triangulator:Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer$Triangulator;
      intermediary field_27334 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;field_27334:Lcom/mojang/blaze3d/systems/RenderSystem$class_5590$class_5591;
      official c Lcom/mojang/blaze3d/systems/RenderSystem$a;c:Lcom/mojang/blaze3d/systems/RenderSystem$a$a;
    • buffer

      @Nullable private @Nullable GpuBuffer buffer
      Mappings:
      Namespace Name Mixin selector
      named buffer Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;buffer:Lnet/minecraft/client/gl/GpuBuffer;
      intermediary field_54299 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;field_54299:Lnet/minecraft/class_10227;
      official d Lcom/mojang/blaze3d/systems/RenderSystem$a;d:Lfem;
    • indexType

      private VertexFormat.IndexType indexType
      Mappings:
      Namespace Name Mixin selector
      named indexType Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;indexType:Lnet/minecraft/client/render/VertexFormat$IndexType;
      intermediary field_27336 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;field_27336:Lnet/minecraft/class_293$class_5595;
      official e Lcom/mojang/blaze3d/systems/RenderSystem$a;e:Lfgw$b;
    • size

      private int size
      Mappings:
      Namespace Name Mixin selector
      named size Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;size:I
      intermediary field_27337 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;field_27337:I
      official f Lcom/mojang/blaze3d/systems/RenderSystem$a;f:I
  • Constructor Details

    • ShapeIndexBuffer

      ShapeIndexBuffer(int vertexCountInShape, int vertexCountInTriangulated, RenderSystem.ShapeIndexBuffer.Triangulator triangulator)
      Parameters:
      vertexCountInShape - the number of vertices in a shape
      vertexCountInTriangulated - the number of vertices in the triangles decomposed from the shape
      triangulator - a function that decomposes a shape into triangles
      Mappings:
      Namespace Name Mixin selector
      named <init> Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;<init>(IILcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer$Triangulator;)V
      intermediary <init> Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;<init>(IILcom/mojang/blaze3d/systems/RenderSystem$class_5590$class_5591;)V
      official <init> Lcom/mojang/blaze3d/systems/RenderSystem$a;<init>(IILcom/mojang/blaze3d/systems/RenderSystem$a$a;)V
  • Method Details

    • isLargeEnough

      public boolean isLargeEnough(int requiredSize)
      Mappings:
      Namespace Name Mixin selector
      named isLargeEnough Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;isLargeEnough(I)Z
      intermediary method_43409 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;method_43409(I)Z
      official a Lcom/mojang/blaze3d/systems/RenderSystem$a;a(I)Z
    • bindAndGrow

      public void bindAndGrow(int requiredSize)
      Binds this buffer as a current index buffer. If necessary, it grows this buffer in size and uploads indices to the corresponding buffer in GPU.
      Mappings:
      Namespace Name Mixin selector
      named bindAndGrow Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;bindAndGrow(I)V
      intermediary method_43410 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;method_43410(I)V
      official b Lcom/mojang/blaze3d/systems/RenderSystem$a;b(I)V
    • grow

      private void grow(int requiredSize)
      Mappings:
      Namespace Name Mixin selector
      named grow Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;grow(I)V
      intermediary method_31920 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;method_31920(I)V
      official c Lcom/mojang/blaze3d/systems/RenderSystem$a;c(I)V
    • getIndexConsumer

      private IntConsumer getIndexConsumer(ByteBuffer indexBuffer)
      Mappings:
      Namespace Name Mixin selector
      named getIndexConsumer Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;getIndexConsumer(Ljava/nio/ByteBuffer;)Lit/unimi/dsi/fastutil/ints/IntConsumer;
      intermediary method_31922 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;method_31922(Ljava/nio/ByteBuffer;)Lit/unimi/dsi/fastutil/ints/IntConsumer;
      official a Lcom/mojang/blaze3d/systems/RenderSystem$a;a(Ljava/nio/ByteBuffer;)Lit/unimi/dsi/fastutil/ints/IntConsumer;
    • getIndexType

      public VertexFormat.IndexType getIndexType()
      Mappings:
      Namespace Name Mixin selector
      named getIndexType Lcom/mojang/blaze3d/systems/RenderSystem$ShapeIndexBuffer;getIndexType()Lnet/minecraft/client/render/VertexFormat$IndexType;
      intermediary method_31924 Lcom/mojang/blaze3d/systems/RenderSystem$class_5590;method_31924()Lnet/minecraft/class_293$class_5595;
      official a Lcom/mojang/blaze3d/systems/RenderSystem$a;a()Lfgw$b;