Class FaceBakery

java.lang.Object
net.minecraft.client.renderer.block.model.FaceBakery

public class FaceBakery extends Object
  • Field Details

    • VERTEX_INT_SIZE

      public static final int VERTEX_INT_SIZE
      See Also:
    • RESCALE_22_5

      private static final float RESCALE_22_5
    • RESCALE_45

      private static final float RESCALE_45
    • VERTEX_COUNT

      public static final int VERTEX_COUNT
      See Also:
    • COLOR_INDEX

      private static final int COLOR_INDEX
      See Also:
    • UV_INDEX

      public static final int UV_INDEX
      See Also:
  • Constructor Details

    • FaceBakery

      public FaceBakery()
  • Method Details

    • defaultFaceUV

      public static BlockElementFace.UVs defaultFaceUV(org.joml.Vector3fc pPosFrom, org.joml.Vector3fc pPosTo, Direction pFacing)
    • bakeQuad

      public static BakedQuad bakeQuad(org.joml.Vector3fc pPosFrom, org.joml.Vector3fc pPosTo, BlockElementFace pFace, TextureAtlasSprite pSprite, Direction pFacing, ModelState pModelState, @Nullable BlockElementRotation pRotation, boolean pShade, int pLightEmission)
    • shrinkUVs

      private static BlockElementFace.UVs shrinkUVs(TextureAtlasSprite pSprite, BlockElementFace.UVs pUvs)
    • makeVertices

      private static int[] makeVertices(BlockElementFace.UVs pUvs, Quadrant pRotation, org.joml.Matrix4fc pInverseFaceTransform, TextureAtlasSprite pSprite, Direction pFacing, float[] pShape, Transformation pTransformation, @Nullable BlockElementRotation pPartRotation)
    • setupShape

      private static float[] setupShape(org.joml.Vector3fc pPosFrom, org.joml.Vector3fc pPosTo)
    • bakeVertex

      private static void bakeVertex(int[] pVertexData, int pVertexIndex, FaceInfo pFaceInfo, BlockElementFace.UVs pUvs, Quadrant pRotation, org.joml.Matrix4fc pInverseFaceTransform, float[] pShape, TextureAtlasSprite pSprite, Transformation pTransformation, @Nullable BlockElementRotation pPartRotation)
    • cornerToCenter

      private static float cornerToCenter(float pCoord)
    • centerToCorner

      private static float centerToCorner(float pCoord)
    • fillVertex

      private static void fillVertex(int[] pVertexData, int pVertexIndex, org.joml.Vector3f pPos, TextureAtlasSprite pSprite, float pU, float pV)
    • applyElementRotation

      private static void applyElementRotation(org.joml.Vector3f pVec, @Nullable BlockElementRotation pPartRotation)
    • applyModelRotation

      private static void applyModelRotation(org.joml.Vector3f pPos, Transformation pTransform)
    • rotateVertexBy

      private static void rotateVertexBy(org.joml.Vector3f pPos, org.joml.Vector3fc pOrigin, org.joml.Matrix4fc pTransform, org.joml.Vector3fc pScale)
    • calculateFacing

      private static Direction calculateFacing(int[] pFaceData)
    • xFromData

      private static float xFromData(int[] pFaceData, int pIndex)
    • yFromData

      private static float yFromData(int[] pFaceData, int pIndex)
    • zFromData

      private static float zFromData(int[] pFaceData, int pIndex)
    • vectorFromData

      private static org.joml.Vector3f vectorFromData(int[] pFaceData, int pIndex)
    • recalculateWinding

      private static void recalculateWinding(int[] pVertices, Direction pDirection)
    • extractPositions

      public static void extractPositions(int[] pFaceData, Consumer<org.joml.Vector3f> pOutput)