Fixed Monolith rendering.
This commit is contained in:
parent
434bf4d990
commit
d322088e81
3 changed files with 11 additions and 7 deletions
|
@ -22,13 +22,14 @@ public class MonolithModel extends EntityModel<MonolithEntity> {
|
||||||
private final ModelPart body;
|
private final ModelPart body;
|
||||||
|
|
||||||
public MonolithModel(EntityRendererFactory.Context context) {
|
public MonolithModel(EntityRendererFactory.Context context) {
|
||||||
|
super(MyRenderLayer::getMonolith);
|
||||||
this.body = context.getPart(ModEntityModelLayers.MONOLITH);
|
this.body = context.getPart(ModEntityModelLayers.MONOLITH);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TexturedModelData getTexturedModelData() {
|
public static TexturedModelData getTexturedModelData() {
|
||||||
ModelData modelData = new ModelData();
|
ModelData modelData = new ModelData();
|
||||||
ModelPartData modelPartData = modelData.getRoot();
|
ModelPartData modelPartData = modelData.getRoot();
|
||||||
modelPartData.addChild("body", ModelPartBuilder.create().uv(0, 0).cuboid(-23.5F, -23.5F, 0, 49.0F, 4.90F, 1.0F, false), ModelTransform.NONE);
|
modelPartData.addChild("body", ModelPartBuilder.create().uv(0, 0).cuboid(-23.5F, -23.5F, 0, 49.0F, 49.0F, 1.0F, false), ModelTransform.NONE);
|
||||||
return TexturedModelData.of(modelData, 102, 51);
|
return TexturedModelData.of(modelData, 102, 51);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,18 +6,21 @@ import java.util.stream.Stream;
|
||||||
|
|
||||||
import net.fabricmc.api.EnvType;
|
import net.fabricmc.api.EnvType;
|
||||||
import net.fabricmc.api.Environment;
|
import net.fabricmc.api.Environment;
|
||||||
|
|
||||||
|
import net.minecraft.client.render.VertexConsumerProvider;
|
||||||
import net.minecraft.client.render.entity.MobEntityRenderer;
|
import net.minecraft.client.render.entity.MobEntityRenderer;
|
||||||
import org.dimdev.dimdoors.entity.MonolithEntity;
|
import org.dimdev.dimdoors.entity.MonolithEntity;
|
||||||
|
|
||||||
import net.minecraft.client.render.RenderLayer;
|
import net.minecraft.client.render.RenderLayer;
|
||||||
import net.minecraft.client.render.entity.EntityRendererFactory;
|
import net.minecraft.client.render.entity.EntityRendererFactory;
|
||||||
|
import net.minecraft.client.util.math.MatrixStack;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
|
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
@Environment(EnvType.CLIENT)
|
@Environment(EnvType.CLIENT)
|
||||||
public class MonolithRenderer extends MobEntityRenderer<MonolithEntity, MonolithModel> {
|
public class MonolithRenderer extends MobEntityRenderer<MonolithEntity, MonolithModel> {
|
||||||
public static final List<RenderLayer> MONOLITH_TEXTURES = Stream.of(
|
public static final List<Identifier> MONOLITH_TEXTURES = Stream.of(
|
||||||
new Identifier("dimdoors:textures/mob/monolith/monolith0.png"),
|
new Identifier("dimdoors:textures/mob/monolith/monolith0.png"),
|
||||||
new Identifier("dimdoors:textures/mob/monolith/monolith1.png"),
|
new Identifier("dimdoors:textures/mob/monolith/monolith1.png"),
|
||||||
new Identifier("dimdoors:textures/mob/monolith/monolith2.png"),
|
new Identifier("dimdoors:textures/mob/monolith/monolith2.png"),
|
||||||
|
@ -37,7 +40,7 @@ public class MonolithRenderer extends MobEntityRenderer<MonolithEntity, Monolith
|
||||||
new Identifier("dimdoors:textures/mob/monolith/monolith16.png"),
|
new Identifier("dimdoors:textures/mob/monolith/monolith16.png"),
|
||||||
new Identifier("dimdoors:textures/mob/monolith/monolith17.png"),
|
new Identifier("dimdoors:textures/mob/monolith/monolith17.png"),
|
||||||
new Identifier("dimdoors:textures/mob/monolith/monolith18.png")
|
new Identifier("dimdoors:textures/mob/monolith/monolith18.png")
|
||||||
).map(MyRenderLayer::getMonolith).collect(Collectors.toList());
|
).collect(Collectors.toList());
|
||||||
|
|
||||||
private static MonolithModel INSTANCE;
|
private static MonolithModel INSTANCE;
|
||||||
|
|
||||||
|
@ -63,6 +66,6 @@ public class MonolithRenderer extends MobEntityRenderer<MonolithEntity, Monolith
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Identifier getTexture(MonolithEntity entity) {
|
public Identifier getTexture(MonolithEntity entity) {
|
||||||
return null;
|
return MonolithRenderer.MONOLITH_TEXTURES.get(entity.getTextureState());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package org.dimdev.dimdoors.particle.client;
|
package org.dimdev.dimdoors.particle.client;
|
||||||
|
|
||||||
|
import org.dimdev.dimdoors.client.MonolithModel;
|
||||||
import org.dimdev.dimdoors.client.MonolithRenderer;
|
import org.dimdev.dimdoors.client.MonolithRenderer;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
|
@ -15,6 +16,7 @@ import net.minecraft.client.render.VertexConsumerProvider;
|
||||||
import net.minecraft.client.util.math.MatrixStack;
|
import net.minecraft.client.util.math.MatrixStack;
|
||||||
import net.minecraft.client.world.ClientWorld;
|
import net.minecraft.client.world.ClientWorld;
|
||||||
import net.minecraft.particle.DefaultParticleType;
|
import net.minecraft.particle.DefaultParticleType;
|
||||||
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.math.Vec3f;
|
import net.minecraft.util.math.Vec3f;
|
||||||
|
|
||||||
import net.fabricmc.api.EnvType;
|
import net.fabricmc.api.EnvType;
|
||||||
|
@ -22,12 +24,10 @@ import net.fabricmc.api.Environment;
|
||||||
|
|
||||||
@Environment(EnvType.CLIENT)
|
@Environment(EnvType.CLIENT)
|
||||||
public class MonolithParticle extends Particle {
|
public class MonolithParticle extends Particle {
|
||||||
private final RenderLayer layer;
|
|
||||||
|
|
||||||
public MonolithParticle(ClientWorld world, double x, double y, double z) {
|
public MonolithParticle(ClientWorld world, double x, double y, double z) {
|
||||||
super(world, x, y, z);
|
super(world, x, y, z);
|
||||||
this.maxAge = 30;
|
this.maxAge = 30;
|
||||||
this.layer = MonolithRenderer.MONOLITH_TEXTURES.get(14);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -39,7 +39,7 @@ public class MonolithParticle extends Particle {
|
||||||
matrices.scale(-1.0F, -1.0F, 1.0F);
|
matrices.scale(-1.0F, -1.0F, 1.0F);
|
||||||
matrices.translate(0.0D, -1.1009999513626099D, 1.5D);
|
matrices.translate(0.0D, -1.1009999513626099D, 1.5D);
|
||||||
VertexConsumerProvider.Immediate immediate = MinecraftClient.getInstance().getBufferBuilders().getEntityVertexConsumers();
|
VertexConsumerProvider.Immediate immediate = MinecraftClient.getInstance().getBufferBuilders().getEntityVertexConsumers();
|
||||||
VertexConsumer vertexConsumer2 = immediate.getBuffer(this.layer);
|
VertexConsumer vertexConsumer2 = immediate.getBuffer(MonolithRenderer.getInstance().getLayer(new Identifier("dimdoors:textures/mob/monolith/monolith14.png")));
|
||||||
MonolithRenderer.getInstance().render(matrices, vertexConsumer2, 0xf000f0, OverlayTexture.DEFAULT_UV, 1.0F, 1.0F, 1.0F, 1.0F);
|
MonolithRenderer.getInstance().render(matrices, vertexConsumer2, 0xf000f0, OverlayTexture.DEFAULT_UV, 1.0F, 1.0F, 1.0F, 1.0F);
|
||||||
immediate.draw();
|
immediate.draw();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue