Class SuperByteBuffer

java.lang.Object
com.simibubi.create.foundation.render.SuperByteBuffer
All Implemented Interfaces:
com.jozufozu.flywheel.util.transform.Rotate<SuperByteBuffer>, com.jozufozu.flywheel.util.transform.Scale<SuperByteBuffer>, com.jozufozu.flywheel.util.transform.Translate<SuperByteBuffer>, com.jozufozu.flywheel.util.transform.TStack<SuperByteBuffer>

public class SuperByteBuffer extends Object implements com.jozufozu.flywheel.util.transform.Scale<SuperByteBuffer>, com.jozufozu.flywheel.util.transform.Translate<SuperByteBuffer>, com.jozufozu.flywheel.util.transform.Rotate<SuperByteBuffer>, com.jozufozu.flywheel.util.transform.TStack<SuperByteBuffer>
  • Constructor Details

    • SuperByteBuffer

      public SuperByteBuffer(com.mojang.blaze3d.vertex.BufferBuilder buf)
  • Method Details

    • renderInto

      public void renderInto(com.mojang.blaze3d.vertex.PoseStack input, com.mojang.blaze3d.vertex.VertexConsumer builder)
    • reset

      public SuperByteBuffer reset()
    • isEmpty

      public boolean isEmpty()
    • getTransforms

      public com.mojang.blaze3d.vertex.PoseStack getTransforms()
    • translate

      public SuperByteBuffer translate(double x, double y, double z)
      Specified by:
      translate in interface com.jozufozu.flywheel.util.transform.Translate<SuperByteBuffer>
    • multiply

      public SuperByteBuffer multiply(com.mojang.math.Quaternion quaternion)
      Specified by:
      multiply in interface com.jozufozu.flywheel.util.transform.Rotate<SuperByteBuffer>
    • scale

      public SuperByteBuffer scale(float factorX, float factorY, float factorZ)
      Specified by:
      scale in interface com.jozufozu.flywheel.util.transform.Scale<SuperByteBuffer>
    • pushPose

      public SuperByteBuffer pushPose()
      Specified by:
      pushPose in interface com.jozufozu.flywheel.util.transform.TStack<SuperByteBuffer>
    • popPose

      public SuperByteBuffer popPose()
      Specified by:
      popPose in interface com.jozufozu.flywheel.util.transform.TStack<SuperByteBuffer>
    • transform

      public SuperByteBuffer transform(com.mojang.blaze3d.vertex.PoseStack stack)
    • rotateCentered

      public SuperByteBuffer rotateCentered(net.minecraft.core.Direction axis, float radians)
    • rotateCentered

      public SuperByteBuffer rotateCentered(com.mojang.math.Quaternion q)
    • color

      public SuperByteBuffer color(int r, int g, int b, int a)
    • color

      public SuperByteBuffer color(int color)
    • color

      public SuperByteBuffer color(Color c)
    • disableDiffuseMult

      public SuperByteBuffer disableDiffuseMult()
      Prevents vertex colors from being multiplied by the diffuse value calculated from the final transformed normal vector. Useful for entity rendering, when diffuse is applied automatically later.
    • diffuseCalculator

      public SuperByteBuffer diffuseCalculator(com.jozufozu.flywheel.util.DiffuseLightCalculator diffuseCalculator)
    • shiftUV

      public SuperByteBuffer shiftUV(SpriteShiftEntry entry)
    • shiftUVScrolling

      public SuperByteBuffer shiftUVScrolling(SpriteShiftEntry entry, float scrollV)
    • shiftUVtoSheet

      public SuperByteBuffer shiftUVtoSheet(SpriteShiftEntry entry, float uTarget, float vTarget, int sheetSize)
    • overlay

      public SuperByteBuffer overlay()
    • overlay

      public SuperByteBuffer overlay(int overlay)
    • light

      public SuperByteBuffer light()
    • light

      public SuperByteBuffer light(com.mojang.math.Matrix4f lightTransform)
    • light

      public SuperByteBuffer light(int packedLightCoords)
    • light

      public SuperByteBuffer light(com.mojang.math.Matrix4f lightTransform, int packedLightCoords)
    • hybridLight

      public SuperByteBuffer hybridLight()
      Uses max light from calculated light (world light or custom light) and vertex light for the final light value. Ineffective if any other light method was not called.
    • fullNormalTransform

      public SuperByteBuffer fullNormalTransform()
      Transforms normals not only by the local matrix stack, but also by the passed matrix stack.
    • forEntityRender

      public SuperByteBuffer forEntityRender()
    • transformColor

      public static int transformColor(byte component, float scale)
    • transformColor

      public static int transformColor(int component, float scale)
    • getUnInterpolatedU

      public static float getUnInterpolatedU(net.minecraft.client.renderer.texture.TextureAtlasSprite sprite, float u)
    • getUnInterpolatedV

      public static float getUnInterpolatedV(net.minecraft.client.renderer.texture.TextureAtlasSprite sprite, float v)
    • maxLight

      public static int maxLight(int packedLight1, int packedLight2)