From 5b67ac53b9bebbebdd8083e2bcc6e5be14868d4b Mon Sep 17 00:00:00 2001 From: Sarinsa Date: Tue, 21 Jun 2022 03:19:57 +0200 Subject: [PATCH] Filled in some param names + fixed borked texture --- .../entity/SpecialCreeperRenderer.java | 2 +- .../entity/layers/SpecialMobEyesLayer.java | 12 ++++++------ .../entity/layers/SpecialMobOverlayLayer.java | 15 +++++++-------- .../textures/entity/creeper/dark_eyes.png | Bin 2942 -> 2871 bytes 4 files changed, 14 insertions(+), 15 deletions(-) diff --git a/src/main/java/fathertoast/specialmobs/client/renderer/entity/SpecialCreeperRenderer.java b/src/main/java/fathertoast/specialmobs/client/renderer/entity/SpecialCreeperRenderer.java index f8e9656..e5d3b20 100644 --- a/src/main/java/fathertoast/specialmobs/client/renderer/entity/SpecialCreeperRenderer.java +++ b/src/main/java/fathertoast/specialmobs/client/renderer/entity/SpecialCreeperRenderer.java @@ -25,7 +25,7 @@ public class SpecialCreeperRenderer extends CreeperRenderer { public SpecialCreeperRenderer( EntityRendererManager rendererManager ) { super( rendererManager ); baseShadowRadius = shadowRadius; - // addLayer( new SpecialMobEyesLayer<>( this ) );TODO + addLayer( new SpecialMobEyesLayer<>( this ) ); addLayer( new SpecialMobOverlayLayer<>( this, new CreeperModel<>( 0.25F ) ) ); } diff --git a/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobEyesLayer.java b/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobEyesLayer.java index a524b54..df3e70b 100644 --- a/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobEyesLayer.java +++ b/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobEyesLayer.java @@ -6,6 +6,7 @@ import fathertoast.specialmobs.common.core.SpecialMobs; import fathertoast.specialmobs.common.entity.ISpecialMob; import mcp.MethodsReturnNonnullByDefault; import net.minecraft.client.renderer.IRenderTypeBuffer; +import net.minecraft.client.renderer.LightTexture; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.entity.IEntityRenderer; import net.minecraft.client.renderer.entity.layers.AbstractEyesLayer; @@ -27,17 +28,16 @@ public class SpecialMobEyesLayer> ext public SpecialMobEyesLayer( IEntityRenderer renderer ) { super( renderer ); } - - // I have no clue what all these floats mean, but also I don't really care right now. Would be nice to know eventually. + @Override - public void render( MatrixStack matrixStack, IRenderTypeBuffer buffer, int layer, T entity, - float a, float b, float c, float d, float e, float f ) { + public void render( MatrixStack matrixStack, IRenderTypeBuffer buffer, int packedLight, T entity, float limbSwing, + float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch ) { final ResourceLocation eyesTexture = ((ISpecialMob) entity).getSpecialData().getTextureEyes(); if( eyesTexture == null ) return; //TODO does not work; for some reason, all the transparency renders as white - IVertexBuilder ivertexbuilder = buffer.getBuffer( RenderType.eyes( eyesTexture ) ); - this.getParentModel().renderToBuffer( matrixStack, ivertexbuilder, 15728640, OverlayTexture.NO_OVERLAY, + IVertexBuilder vertexBuilder = buffer.getBuffer( RenderType.eyes(eyesTexture) ); + this.getParentModel().renderToBuffer( matrixStack, vertexBuilder, LightTexture.pack(15, 15), OverlayTexture.NO_OVERLAY, 1.0F, 1.0F, 1.0F, 1.0F ); } diff --git a/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobOverlayLayer.java b/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobOverlayLayer.java index 1dc6a3f..6f871e7 100644 --- a/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobOverlayLayer.java +++ b/src/main/java/fathertoast/specialmobs/client/renderer/entity/layers/SpecialMobOverlayLayer.java @@ -28,22 +28,21 @@ public class SpecialMobOverlayLayer> super( renderer ); layerModel = model; } - - // I have no clue what all these floats mean, but also I don't really care right now. Would be nice to know eventually. + @Override - public void render( MatrixStack matrixStack, IRenderTypeBuffer buffer, int layer, T entity, - float a, float b, float c, float d, float e, float f ) { + public void render( MatrixStack matrixStack, IRenderTypeBuffer buffer, int packedLight, T entity, + float limbSwing, float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch ) { final ResourceLocation overlayTexture = ((ISpecialMob) entity).getSpecialData().getTextureOverlay(); if( overlayTexture == null ) return; //TODO this renders oddly dark, look for way to fix lighting //float f0 = (float) entity.tickCount + c; - layerModel.prepareMobModel( entity, a, b, c ); + layerModel.prepareMobModel( entity, limbSwing, limbSwingAmount, partialTicks ); this.getParentModel().copyPropertiesTo( layerModel ); - IVertexBuilder ivertexbuilder = buffer.getBuffer( RenderType.entityCutoutNoCull( overlayTexture, false ) ); - layerModel.setupAnim( entity, a, b, d, e, f ); - layerModel.renderToBuffer( matrixStack, ivertexbuilder, layer, OverlayTexture.NO_OVERLAY, + IVertexBuilder vertexBuilder = buffer.getBuffer( RenderType.entityCutoutNoCull( overlayTexture, false ) ); + layerModel.setupAnim( entity, limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch ); + layerModel.renderToBuffer( matrixStack, vertexBuilder, packedLight, OverlayTexture.NO_OVERLAY, 0.5F, 0.5F, 0.5F, 1.0F ); } } \ No newline at end of file diff --git a/src/main/resources/assets/specialmobs/textures/entity/creeper/dark_eyes.png b/src/main/resources/assets/specialmobs/textures/entity/creeper/dark_eyes.png index 09e0fedd1c66f11193ba8f74ba3eb7522a95f451..4430e3f1cf863e254ee74834a1f7fc0a136e7ee8 100644 GIT binary patch delta 2855 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 a{{sL