Class ModelHelper

java.lang.Object
com.hbm_m.client.model.ModelHelper

public class ModelHelper extends Object
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final record 
     
    static final record 
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    createCuboid(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, org.joml.Vector3f from, org.joml.Vector3f to, net.minecraft.client.renderer.texture.TextureAtlasSprite sprite, Map<net.minecraft.core.Direction,ModelHelper.UVSpec> uvMap, Set<net.minecraft.core.Direction> facesToSkip)
     
    static List<net.minecraft.client.renderer.block.model.BakedQuad>
    offsetQuadUvs(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, float du, float dv)
    Смещение UV всех вершин квада (stride 8 ints: u,v в base+4, base+5).
    static List<net.minecraft.client.renderer.block.model.BakedQuad>
    offsetQuadUvsWrapped(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, float du, float dv, float uMin, float uMax, float vMin, float vMax)
    Смещение UV с wrap внутри sprite bounds.
    static List<net.minecraft.client.renderer.block.model.BakedQuad>
    transformQuadsByFacing(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, int angleDeg)
    Поворачивает квады вокруг оси Y через центр блока (0.5, 0.5, 0.5).
    static List<net.minecraft.client.renderer.block.model.BakedQuad>
    transformQuadsByMatrix(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, org.joml.Matrix4f matrix)
    Применяет произвольную матрицу 4x4 к вершинам квадов (позиция и нормаль).
    static List<net.minecraft.client.renderer.block.model.BakedQuad>
    translateQuads(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, float dx, float dy, float dz)
    Смещает квады на (dx, dy, dz).

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ModelHelper

      public ModelHelper()
  • Method Details

    • createCuboid

      public static void createCuboid(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, org.joml.Vector3f from, org.joml.Vector3f to, net.minecraft.client.renderer.texture.TextureAtlasSprite sprite, Map<net.minecraft.core.Direction,ModelHelper.UVSpec> uvMap, Set<net.minecraft.core.Direction> facesToSkip)
    • transformQuadsByFacing

      public static List<net.minecraft.client.renderer.block.model.BakedQuad> transformQuadsByFacing(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, int angleDeg)
      Поворачивает квады вокруг оси Y через центр блока (0.5, 0.5, 0.5).
      Parameters:
      quads - исходные квады
      angleDeg - угол в градусах (0=North, 90=East, 180=South, 270=West)
    • offsetQuadUvs

      public static List<net.minecraft.client.renderer.block.model.BakedQuad> offsetQuadUvs(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, float du, float dv)
      Смещение UV всех вершин квада (stride 8 ints: u,v в base+4, base+5). Для текстурной анимации как GL_TEXTURE в 1.7.10.
    • offsetQuadUvsWrapped

      public static List<net.minecraft.client.renderer.block.model.BakedQuad> offsetQuadUvsWrapped(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, float du, float dv, float uMin, float uMax, float vMin, float vMax)
      Смещение UV с wrap внутри sprite bounds. du, dv — смещение в нормализованном [0,1] пространстве текстуры (как GL_TEXTURE matrix в 1.7.10). uMin/uMax/vMin/vMax — bounds спрайта в атласе.
    • translateQuads

      public static List<net.minecraft.client.renderer.block.model.BakedQuad> translateQuads(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, float dx, float dy, float dz)
      Смещает квады на (dx, dy, dz). Для выравнивания baked model с BER (translate 0.5, 0, 0.5).
    • transformQuadsByMatrix

      public static List<net.minecraft.client.renderer.block.model.BakedQuad> transformQuadsByMatrix(List<net.minecraft.client.renderer.block.model.BakedQuad> quads, org.joml.Matrix4f matrix)
      Применяет произвольную матрицу 4x4 к вершинам квадов (позиция и нормаль). Используется для трансформации door panel в open/closed состоянии в BakedModel.