Config and minor improvements
This commit is contained in:
parent
ca2c5aa93e
commit
a166e94656
6 changed files with 114 additions and 3 deletions
|
@ -2,21 +2,65 @@ package su.a71.new_soviet;
|
|||
|
||||
import net.fabricmc.api.EnvType;
|
||||
import net.fabricmc.api.Environment;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.SignBlock;
|
||||
import net.minecraft.block.entity.SignText;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.font.TextRenderer;
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
import net.minecraft.client.render.block.entity.BlockEntityRenderer;
|
||||
import net.minecraft.client.render.block.entity.BlockEntityRendererFactory;
|
||||
import net.minecraft.client.render.block.entity.SignBlockEntityRenderer;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.text.OrderedText;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.RotationAxis;
|
||||
import net.minecraft.util.math.Vec3d;
|
||||
import org.joml.Matrix4f;
|
||||
import su.a71.new_soviet.entity.TVBlockEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Environment(EnvType.CLIENT)
|
||||
public class TVBlockEntityRenderer implements BlockEntityRenderer<TVBlockEntity> {
|
||||
public TVBlockEntityRenderer(BlockEntityRendererFactory.Context ctx) {}
|
||||
private static TextRenderer textRenderer;
|
||||
private static final Vec3d TEXT_OFFSET = new Vec3d(0.0, 0.3333333432674408, 0.046666666865348816);
|
||||
|
||||
|
||||
public TVBlockEntityRenderer(BlockEntityRendererFactory.Context ctx) {
|
||||
textRenderer = ctx.getTextRenderer();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(TVBlockEntity blockEntity, float tickDelta, MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, int overlay) {
|
||||
matrices.push();
|
||||
// Rendering stuff here
|
||||
// this.setTextAngles(matrices, true, TEXT_OFFSET);
|
||||
// textRenderer.draw("Test amogus", 0, 0, 999999, false, matrices.peek().getPositionMatrix(), vertexConsumers, TextRenderer.TextLayerType.POLYGON_OFFSET, 19999, light);
|
||||
matrices.pop();
|
||||
|
||||
}
|
||||
|
||||
public float getScale() {
|
||||
return 0.6666667F;
|
||||
}
|
||||
|
||||
|
||||
void setAngles(MatrixStack matrices, float rotationDegrees, BlockState state) {
|
||||
matrices.translate(0.5F, 0.75F * this.getScale(), 0.5F);
|
||||
matrices.multiply(RotationAxis.POSITIVE_Y.rotationDegrees(rotationDegrees));
|
||||
if (!(state.getBlock() instanceof SignBlock)) {
|
||||
matrices.translate(0.0F, -0.3125F, -0.4375F);
|
||||
}
|
||||
}
|
||||
|
||||
private void setTextAngles(MatrixStack matrices, boolean front, Vec3d translation) {
|
||||
if (!front) {
|
||||
matrices.multiply(RotationAxis.POSITIVE_Y.rotationDegrees(180.0F));
|
||||
}
|
||||
|
||||
float f = 0.015625F * this.getScale();
|
||||
matrices.translate(translation.x, translation.y, translation.z);
|
||||
matrices.scale(f, -f, f);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue