Spaces:
Build error
Build error
package net.minecraft.client.renderer; | |
import com.mojang.blaze3d.vertex.PoseStack; | |
import com.mojang.blaze3d.vertex.VertexConsumer; | |
import net.minecraft.core.Direction; | |
import net.minecraft.world.phys.AABB; | |
import net.minecraft.world.phys.Vec3; | |
import net.minecraft.world.phys.shapes.VoxelShape; | |
import net.minecraftforge.api.distmarker.Dist; | |
import net.minecraftforge.api.distmarker.OnlyIn; | |
import org.joml.Matrix4f; | |
import org.joml.Vector3f; | |
public class ShapeRenderer { | |
public static void renderShape( | |
PoseStack p_362127_, VertexConsumer p_362290_, VoxelShape p_362784_, double p_360742_, double p_360770_, double p_368227_, int p_362030_ | |
) { | |
PoseStack.Pose posestack$pose = p_362127_.last(); | |
p_362784_.forAllEdges( | |
(p_368095_, p_361366_, p_363660_, p_361928_, p_364145_, p_361311_) -> { | |
Vector3f vector3f = new Vector3f((float)(p_361928_ - p_368095_), (float)(p_364145_ - p_361366_), (float)(p_361311_ - p_363660_)).normalize(); | |
p_362290_.addVertex(posestack$pose, (float)(p_368095_ + p_360742_), (float)(p_361366_ + p_360770_), (float)(p_363660_ + p_368227_)) | |
.setColor(p_362030_) | |
.setNormal(posestack$pose, vector3f); | |
p_362290_.addVertex(posestack$pose, (float)(p_361928_ + p_360742_), (float)(p_364145_ + p_360770_), (float)(p_361311_ + p_368227_)) | |
.setColor(p_362030_) | |
.setNormal(posestack$pose, vector3f); | |
} | |
); | |
} | |
public static void renderLineBox( | |
PoseStack p_367242_, VertexConsumer p_368944_, AABB p_369230_, float p_364083_, float p_362021_, float p_362124_, float p_367649_ | |
) { | |
renderLineBox( | |
p_367242_, | |
p_368944_, | |
p_369230_.minX, | |
p_369230_.minY, | |
p_369230_.minZ, | |
p_369230_.maxX, | |
p_369230_.maxY, | |
p_369230_.maxZ, | |
p_364083_, | |
p_362021_, | |
p_362124_, | |
p_367649_, | |
p_364083_, | |
p_362021_, | |
p_362124_ | |
); | |
} | |
public static void renderLineBox( | |
PoseStack p_366452_, | |
VertexConsumer p_365817_, | |
double p_362632_, | |
double p_362535_, | |
double p_368825_, | |
double p_363850_, | |
double p_361520_, | |
double p_367127_, | |
float p_363525_, | |
float p_365172_, | |
float p_361957_, | |
float p_362174_ | |
) { | |
renderLineBox( | |
p_366452_, | |
p_365817_, | |
p_362632_, | |
p_362535_, | |
p_368825_, | |
p_363850_, | |
p_361520_, | |
p_367127_, | |
p_363525_, | |
p_365172_, | |
p_361957_, | |
p_362174_, | |
p_363525_, | |
p_365172_, | |
p_361957_ | |
); | |
} | |
public static void renderLineBox( | |
PoseStack p_363808_, | |
VertexConsumer p_365769_, | |
double p_364950_, | |
double p_364934_, | |
double p_370117_, | |
double p_365763_, | |
double p_361638_, | |
double p_360926_, | |
float p_362396_, | |
float p_361053_, | |
float p_363674_, | |
float p_366690_, | |
float p_365217_, | |
float p_367742_, | |
float p_364278_ | |
) { | |
PoseStack.Pose posestack$pose = p_363808_.last(); | |
float f = (float)p_364950_; | |
float f1 = (float)p_364934_; | |
float f2 = (float)p_370117_; | |
float f3 = (float)p_365763_; | |
float f4 = (float)p_361638_; | |
float f5 = (float)p_360926_; | |
p_365769_.addVertex(posestack$pose, f, f1, f2).setColor(p_362396_, p_367742_, p_364278_, p_366690_).setNormal(posestack$pose, 1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f1, f2).setColor(p_362396_, p_367742_, p_364278_, p_366690_).setNormal(posestack$pose, 1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f, f1, f2).setColor(p_365217_, p_361053_, p_364278_, p_366690_).setNormal(posestack$pose, 0.0F, 1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f, f4, f2).setColor(p_365217_, p_361053_, p_364278_, p_366690_).setNormal(posestack$pose, 0.0F, 1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f, f1, f2).setColor(p_365217_, p_367742_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, 1.0F); | |
p_365769_.addVertex(posestack$pose, f, f1, f5).setColor(p_365217_, p_367742_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, 1.0F); | |
p_365769_.addVertex(posestack$pose, f3, f1, f2).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f4, f2).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f4, f2).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, -1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f, f4, f2).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, -1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f, f4, f2).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, 1.0F); | |
p_365769_.addVertex(posestack$pose, f, f4, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, 1.0F); | |
p_365769_.addVertex(posestack$pose, f, f4, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, -1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f, f1, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, -1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f, f1, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f1, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f1, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, -1.0F); | |
p_365769_.addVertex(posestack$pose, f3, f1, f2).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, -1.0F); | |
p_365769_.addVertex(posestack$pose, f, f4, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f4, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 1.0F, 0.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f1, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f4, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 1.0F, 0.0F); | |
p_365769_.addVertex(posestack$pose, f3, f4, f2).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, 1.0F); | |
p_365769_.addVertex(posestack$pose, f3, f4, f5).setColor(p_362396_, p_361053_, p_363674_, p_366690_).setNormal(posestack$pose, 0.0F, 0.0F, 1.0F); | |
} | |
public static void addChainedFilledBoxVertices( | |
PoseStack p_364970_, | |
VertexConsumer p_368145_, | |
double p_361406_, | |
double p_360919_, | |
double p_368183_, | |
double p_369129_, | |
double p_366679_, | |
double p_368318_, | |
float p_365390_, | |
float p_360927_, | |
float p_369810_, | |
float p_368692_ | |
) { | |
addChainedFilledBoxVertices( | |
p_364970_, | |
p_368145_, | |
(float)p_361406_, | |
(float)p_360919_, | |
(float)p_368183_, | |
(float)p_369129_, | |
(float)p_366679_, | |
(float)p_368318_, | |
p_365390_, | |
p_360927_, | |
p_369810_, | |
p_368692_ | |
); | |
} | |
public static void addChainedFilledBoxVertices( | |
PoseStack p_363033_, | |
VertexConsumer p_368281_, | |
float p_363400_, | |
float p_368959_, | |
float p_368839_, | |
float p_363598_, | |
float p_369683_, | |
float p_364534_, | |
float p_369605_, | |
float p_364542_, | |
float p_367457_, | |
float p_362117_ | |
) { | |
Matrix4f matrix4f = p_363033_.last().pose(); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_369683_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_368959_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_368959_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_369683_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_368959_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_368959_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_368959_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_368959_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_369683_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_369683_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363400_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_368839_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
p_368281_.addVertex(matrix4f, p_363598_, p_369683_, p_364534_).setColor(p_369605_, p_364542_, p_367457_, p_362117_); | |
} | |
public static void renderFace( | |
PoseStack p_361398_, | |
VertexConsumer p_368208_, | |
Direction p_364940_, | |
float p_361821_, | |
float p_366736_, | |
float p_364720_, | |
float p_369092_, | |
float p_365269_, | |
float p_361985_, | |
float p_366223_, | |
float p_362144_, | |
float p_364969_, | |
float p_369822_ | |
) { | |
Matrix4f matrix4f = p_361398_.last().pose(); | |
switch (p_364940_) { | |
case DOWN: | |
p_368208_.addVertex(matrix4f, p_361821_, p_366736_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_366736_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_366736_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_361821_, p_366736_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
break; | |
case UP: | |
p_368208_.addVertex(matrix4f, p_361821_, p_365269_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_361821_, p_365269_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_365269_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_365269_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
break; | |
case NORTH: | |
p_368208_.addVertex(matrix4f, p_361821_, p_366736_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_361821_, p_365269_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_365269_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_366736_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
break; | |
case SOUTH: | |
p_368208_.addVertex(matrix4f, p_361821_, p_366736_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_366736_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_365269_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_361821_, p_365269_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
break; | |
case WEST: | |
p_368208_.addVertex(matrix4f, p_361821_, p_366736_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_361821_, p_366736_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_361821_, p_365269_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_361821_, p_365269_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
break; | |
case EAST: | |
p_368208_.addVertex(matrix4f, p_369092_, p_366736_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_365269_, p_364720_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_365269_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
p_368208_.addVertex(matrix4f, p_369092_, p_366736_, p_361985_).setColor(p_366223_, p_362144_, p_364969_, p_369822_); | |
} | |
} | |
public static void renderVector(PoseStack p_366769_, VertexConsumer p_362011_, Vector3f p_367001_, Vec3 p_367730_, int p_363783_) { | |
PoseStack.Pose posestack$pose = p_366769_.last(); | |
p_362011_.addVertex(posestack$pose, p_367001_) | |
.setColor(p_363783_) | |
.setNormal(posestack$pose, (float)p_367730_.x, (float)p_367730_.y, (float)p_367730_.z); | |
p_362011_.addVertex( | |
posestack$pose, | |
(float)((double)p_367001_.x() + p_367730_.x), | |
(float)((double)p_367001_.y() + p_367730_.y), | |
(float)((double)p_367001_.z() + p_367730_.z) | |
) | |
.setColor(p_363783_) | |
.setNormal(posestack$pose, (float)p_367730_.x, (float)p_367730_.y, (float)p_367730_.z); | |
} | |
} |