java.lang.Object
team.lodestar.lodestone.systems.model.obj.data.Vertex
All Implemented Interfaces:
com.mojang.blaze3d.vertex.VertexConsumer, net.neoforged.neoforge.client.extensions.IVertexConsumerExtension

public class Vertex extends Object implements com.mojang.blaze3d.vertex.VertexConsumer
Represents a vertex with position, normal, uv, color, light, and overlay data.

Each vertex attribute uses a FallbackPair to ensure that default values are used if the data is not present

To set your own data, use the VertexConsumer methods

  • Constructor Summary

    Constructors
    Constructor
    Description
    Vertex(org.joml.Vector3f position, org.joml.Vector3f normal, org.joml.Vector2f uv, org.joml.Vector4i color, int packedLight, int packedOverlay)
     
    Vertex(IndexedVertex indexedVertex, ObjParser.Builder builder)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull com.mojang.blaze3d.vertex.VertexConsumer
    addVertex(float v, float v1, float v2)
     
    void
     
    org.joml.Vector4i
     
    org.joml.Vector3f
     
    int
     
    int
     
    org.joml.Vector3f
     
    org.joml.Vector2f
     
    @NotNull com.mojang.blaze3d.vertex.VertexConsumer
    setColor(int i, int i1, int i2, int i3)
     
    @NotNull com.mojang.blaze3d.vertex.VertexConsumer
    setNormal(float v, float v1, float v2)
     
    @NotNull com.mojang.blaze3d.vertex.VertexConsumer
    setUv(float v, float v1)
     
    @NotNull com.mojang.blaze3d.vertex.VertexConsumer
    setUv1(int i, int i1)
     
    @NotNull com.mojang.blaze3d.vertex.VertexConsumer
    setUv2(int i, int i1)
     
    void
    supplyColor(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
     
    void
    supplyNormal(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, com.mojang.blaze3d.vertex.PoseStack poseStack)
     
    void
    supplyPosition(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, com.mojang.blaze3d.vertex.PoseStack poseStack)
     
    void
    supplyUv(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
     
    void
    supplyUv1(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
     
    void
    supplyUv2(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
     
    void
    supplyVertexData(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, com.mojang.blaze3d.vertex.VertexFormat format, com.mojang.blaze3d.vertex.PoseStack poseStack)
     
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface net.neoforged.neoforge.client.extensions.IVertexConsumerExtension

    applyBakedLighting, applyBakedNormals, misc, putBulkData

    Methods inherited from interface com.mojang.blaze3d.vertex.VertexConsumer

    addVertex, addVertex, addVertex, addVertex, addVertex, putBulkData, putBulkData, setColor, setColor, setLight, setNormal, setOverlay, setWhiteAlpha
  • Constructor Details

    • Vertex

      public Vertex(IndexedVertex indexedVertex, ObjParser.Builder builder)
    • Vertex

      public Vertex(org.joml.Vector3f position, org.joml.Vector3f normal, org.joml.Vector2f uv, org.joml.Vector4i color, int packedLight, int packedOverlay)
  • Method Details

    • getPosition

      public org.joml.Vector3f getPosition()
    • getNormal

      public org.joml.Vector3f getNormal()
    • getUv

      public org.joml.Vector2f getUv()
    • getColor

      public org.joml.Vector4i getColor()
    • getPackedLight

      public int getPackedLight()
    • getPackedOverlay

      public int getPackedOverlay()
    • addVertex

      @NotNull public @NotNull com.mojang.blaze3d.vertex.VertexConsumer addVertex(float v, float v1, float v2)
      Specified by:
      addVertex in interface com.mojang.blaze3d.vertex.VertexConsumer
    • setColor

      @NotNull public @NotNull com.mojang.blaze3d.vertex.VertexConsumer setColor(int i, int i1, int i2, int i3)
      Specified by:
      setColor in interface com.mojang.blaze3d.vertex.VertexConsumer
    • setUv

      @NotNull public @NotNull com.mojang.blaze3d.vertex.VertexConsumer setUv(float v, float v1)
      Specified by:
      setUv in interface com.mojang.blaze3d.vertex.VertexConsumer
    • setUv1

      @NotNull public @NotNull com.mojang.blaze3d.vertex.VertexConsumer setUv1(int i, int i1)
      Specified by:
      setUv1 in interface com.mojang.blaze3d.vertex.VertexConsumer
    • setUv2

      @NotNull public @NotNull com.mojang.blaze3d.vertex.VertexConsumer setUv2(int i, int i1)
      Specified by:
      setUv2 in interface com.mojang.blaze3d.vertex.VertexConsumer
    • setNormal

      @NotNull public @NotNull com.mojang.blaze3d.vertex.VertexConsumer setNormal(float v, float v1, float v2)
      Specified by:
      setNormal in interface com.mojang.blaze3d.vertex.VertexConsumer
    • supplyPosition

      public void supplyPosition(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, com.mojang.blaze3d.vertex.PoseStack poseStack)
    • supplyColor

      public void supplyColor(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
    • supplyUv

      public void supplyUv(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
    • supplyUv1

      public void supplyUv1(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
    • supplyUv2

      public void supplyUv2(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer)
    • supplyNormal

      public void supplyNormal(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, com.mojang.blaze3d.vertex.PoseStack poseStack)
    • supplyVertexData

      public void supplyVertexData(com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, com.mojang.blaze3d.vertex.VertexFormat format, com.mojang.blaze3d.vertex.PoseStack poseStack)
    • clearOverrides

      public void clearOverrides()
    • toString

      public String toString()
      Overrides:
      toString in class Object