遇到了神秘的骨骼乱发光的问题

This commit is contained in:
Atsuishio 2025-05-16 18:25:26 +08:00 committed by Light_Quanta
parent 6f247e72fb
commit d7794b6bed
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
3 changed files with 123 additions and 113 deletions

View file

@ -23,8 +23,8 @@ public class CustomRenderer<T extends Item & GeoAnimatable> extends GeoItemRende
return; return;
for (GeoBone childBone : bone.getChildBones()) { for (GeoBone childBone : bone.getChildBones()) {
if (childBone.getName().endsWith("_l")) { if (childBone.getName().endsWith("_illuminated")) {
var type = ModRenderTypes.ILLUMINATED.apply(this.getTextureLocation(animatable)); var type = ModRenderTypes.GUN_ILLUMINATED.apply(this.getTextureLocation(animatable));
renderRecursively(poseStack, animatable, childBone, type, bufferSource, bufferSource.getBuffer(type), isReRender, partialTick, packedLight, OverlayTexture.NO_OVERLAY, 0xFFFFFFFF); renderRecursively(poseStack, animatable, childBone, type, bufferSource, bufferSource.getBuffer(type), isReRender, partialTick, packedLight, OverlayTexture.NO_OVERLAY, 0xFFFFFFFF);
} else { } else {
renderRecursively(poseStack, animatable, childBone, renderType, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, color); renderRecursively(poseStack, animatable, childBone, renderType, bufferSource, buffer, isReRender, partialTick, packedLight, packedOverlay, color);

View file

@ -34,6 +34,16 @@ public class ModRenderTypes extends RenderType {
return RenderType.create("illuminated", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.QUADS, 256, true, false, state); return RenderType.create("illuminated", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.QUADS, 256, true, false, state);
}); });
public static final Function<ResourceLocation, RenderType> GUN_ILLUMINATED = Util.memoize((location) -> {
TextureStateShard shard = new RenderStateShard.TextureStateShard(location, false, false);
RenderType.CompositeState state = RenderType.CompositeState.builder().setTextureState(shard)
.setShaderState(RENDERTYPE_EYES_SHADER).setTransparencyState(NO_TRANSPARENCY)
.setLightmapState(RenderStateShard.NO_LIGHTMAP)
.setOverlayState(RenderStateShard.NO_OVERLAY)
.createCompositeState(false);
return RenderType.create("gun_illuminated", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.QUADS, 256, true, false, state);
});
//DickSheep的恩情还不完 //DickSheep的恩情还不完
public static final TransparencyStateShard TEST_TRANSPARENCY = new TransparencyStateShard("test_transparency", () -> { public static final TransparencyStateShard TEST_TRANSPARENCY = new TransparencyStateShard("test_transparency", () -> {

View file

@ -7048,117 +7048,6 @@
} }
] ]
}, },
{
"name": "cidao",
"parent": "body",
"pivot": [0.97384, -2.08681, -13.43244],
"cubes": [
{
"origin": [0.91572, -1.64268, -23.31483],
"size": [0.166, 0.548, 8.406],
"uv": {
"east": {"uv": [30, 14], "uv_size": [8, 0.5]},
"west": {"uv": [15, 30], "uv_size": [8, 0.5]},
"up": {"uv": [23, 30], "uv_size": [0.5, 8]},
"down": {"uv": [24, 38], "uv_size": [0.5, -8]}
}
},
{
"origin": [0.91572, -1.19268, -24.32483],
"size": [0.166, 0.098, 1.01],
"uv": {
"north": {"uv": [11, 58], "uv_size": [0.5, 0.5]},
"east": {"uv": [54, 52], "uv_size": [1, 0.5]},
"west": {"uv": [54, 53], "uv_size": [1, 0.5]},
"up": {"uv": [54, 54], "uv_size": [0.5, 1]}
}
},
{
"origin": [0.91572, -1.40028, -24.34813],
"size": [0.166, 0.108, 1.105],
"pivot": [0.99872, -1.35128, -23.84813],
"rotation": [-24, 0, 0],
"uv": {
"east": {"uv": [55, 0], "uv_size": [1, 0.5]},
"west": {"uv": [1, 55], "uv_size": [1, 0.5]},
"down": {"uv": [55, 2], "uv_size": [0.5, -1]}
}
},
{
"origin": [0.91572, -1.42268, -23.79983],
"size": [0.166, 0.23, 0.485],
"uv": {
"east": {"uv": [58, 11], "uv_size": [0.5, 0.5]},
"west": {"uv": [12, 58], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [0.91572, -1.30768, -24.05983],
"size": [0.166, 0.115, 0.26],
"uv": {
"east": {"uv": [58, 12], "uv_size": [0.5, 0.5]},
"west": {"uv": [13, 58], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [0.91572, -1.52768, -23.56983],
"size": [0.166, 0.105, 0.255],
"uv": {
"east": {"uv": [58, 13], "uv_size": [0.5, 0.5]},
"west": {"uv": [14, 58], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [0.74972, -1.85068, -14.90883],
"size": [0.498, 0.864, 1.262],
"uv": {
"north": {"uv": [54, 21], "uv_size": [0.5, 1]},
"east": {"uv": [10, 50], "uv_size": [1.5, 1]},
"south": {"uv": [54, 22], "uv_size": [0.5, 1]},
"west": {"uv": [12, 50], "uv_size": [1.5, 1]},
"up": {"uv": [47, 52], "uv_size": [0.5, 1.5]},
"down": {"uv": [49, 53.5], "uv_size": [0.5, -1.5]}
}
},
{
"origin": [0.86572, -5.49408, -11.10817],
"size": [0.324, 0.432, 0.972],
"pivot": [0.73788, 0.18352, -7.61464],
"rotation": [-45, 0, 0],
"uv": {
"east": {"uv": [54, 23], "uv_size": [1, 0.5]},
"west": {"uv": [24, 54], "uv_size": [1, 0.5]},
"up": {"uv": [54, 24], "uv_size": [0.5, 1]}
}
},
{
"origin": [0.64972, -2.39068, -13.75483],
"size": [0.648, 0.648, 0.648],
"uv": {
"north": {"uv": [42, 57], "uv_size": [0.5, 0.5]},
"east": {"uv": [57, 42], "uv_size": [0.5, 0.5]},
"south": {"uv": [43, 57], "uv_size": [0.5, 0.5]},
"west": {"uv": [57, 43], "uv_size": [0.5, 0.5]},
"up": {"uv": [44, 57], "uv_size": [0.5, 0.5]},
"down": {"uv": [57, 44.5], "uv_size": [0.5, -0.5]}
}
},
{
"origin": [0.62197, -2.06706, -13.47844],
"size": [0.70375, 0.25, 0.25],
"pivot": [0.97384, -1.98681, -13.42244],
"rotation": [-135, 0, 0],
"uv": {
"north": {"uv": [58, 14], "uv_size": [0.5, 0.5]},
"east": {"uv": [15, 58], "uv_size": [0.5, 0.5]},
"south": {"uv": [58, 15], "uv_size": [0.5, 0.5]},
"west": {"uv": [16, 58], "uv_size": [0.5, 0.5]},
"up": {"uv": [58, 16], "uv_size": [0.5, 0.5]},
"down": {"uv": [17, 58.5], "uv_size": [0.5, -0.5]}
}
}
]
},
{ {
"name": "guan", "name": "guan",
"parent": "body", "parent": "body",
@ -7868,6 +7757,117 @@
"parent": "body", "parent": "body",
"pivot": [0.59572, -1.59025, -0.94957] "pivot": [0.59572, -1.59025, -0.94957]
}, },
{
"name": "cidao_illuminated",
"parent": "body",
"pivot": [0.97384, -2.08681, -13.43244],
"cubes": [
{
"origin": [0.91572, -1.64268, -23.31483],
"size": [0.166, 0.548, 8.406],
"uv": {
"east": {"uv": [30, 14], "uv_size": [8, 0.5]},
"west": {"uv": [15, 30], "uv_size": [8, 0.5]},
"up": {"uv": [23, 30], "uv_size": [0.5, 8]},
"down": {"uv": [24, 38], "uv_size": [0.5, -8]}
}
},
{
"origin": [0.91572, -1.19268, -24.32483],
"size": [0.166, 0.098, 1.01],
"uv": {
"north": {"uv": [11, 58], "uv_size": [0.5, 0.5]},
"east": {"uv": [54, 52], "uv_size": [1, 0.5]},
"west": {"uv": [54, 53], "uv_size": [1, 0.5]},
"up": {"uv": [54, 54], "uv_size": [0.5, 1]}
}
},
{
"origin": [0.91572, -1.40028, -24.34813],
"size": [0.166, 0.108, 1.105],
"pivot": [0.99872, -1.35128, -23.84813],
"rotation": [-24, 0, 0],
"uv": {
"east": {"uv": [55, 0], "uv_size": [1, 0.5]},
"west": {"uv": [1, 55], "uv_size": [1, 0.5]},
"down": {"uv": [55, 2], "uv_size": [0.5, -1]}
}
},
{
"origin": [0.91572, -1.42268, -23.79983],
"size": [0.166, 0.23, 0.485],
"uv": {
"east": {"uv": [58, 11], "uv_size": [0.5, 0.5]},
"west": {"uv": [12, 58], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [0.91572, -1.30768, -24.05983],
"size": [0.166, 0.115, 0.26],
"uv": {
"east": {"uv": [58, 12], "uv_size": [0.5, 0.5]},
"west": {"uv": [13, 58], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [0.91572, -1.52768, -23.56983],
"size": [0.166, 0.105, 0.255],
"uv": {
"east": {"uv": [58, 13], "uv_size": [0.5, 0.5]},
"west": {"uv": [14, 58], "uv_size": [0.5, 0.5]}
}
},
{
"origin": [0.74972, -1.85068, -14.90883],
"size": [0.498, 0.864, 1.262],
"uv": {
"north": {"uv": [54, 21], "uv_size": [0.5, 1]},
"east": {"uv": [10, 50], "uv_size": [1.5, 1]},
"south": {"uv": [54, 22], "uv_size": [0.5, 1]},
"west": {"uv": [12, 50], "uv_size": [1.5, 1]},
"up": {"uv": [47, 52], "uv_size": [0.5, 1.5]},
"down": {"uv": [49, 53.5], "uv_size": [0.5, -1.5]}
}
},
{
"origin": [0.86572, -5.49408, -11.10817],
"size": [0.324, 0.432, 0.972],
"pivot": [0.73788, 0.18352, -7.61464],
"rotation": [-45, 0, 0],
"uv": {
"east": {"uv": [54, 23], "uv_size": [1, 0.5]},
"west": {"uv": [24, 54], "uv_size": [1, 0.5]},
"up": {"uv": [54, 24], "uv_size": [0.5, 1]}
}
},
{
"origin": [0.64972, -2.39068, -13.75483],
"size": [0.648, 0.648, 0.648],
"uv": {
"north": {"uv": [42, 57], "uv_size": [0.5, 0.5]},
"east": {"uv": [57, 42], "uv_size": [0.5, 0.5]},
"south": {"uv": [43, 57], "uv_size": [0.5, 0.5]},
"west": {"uv": [57, 43], "uv_size": [0.5, 0.5]},
"up": {"uv": [44, 57], "uv_size": [0.5, 0.5]},
"down": {"uv": [57, 44.5], "uv_size": [0.5, -0.5]}
}
},
{
"origin": [0.62197, -2.06706, -13.47844],
"size": [0.70375, 0.25, 0.25],
"pivot": [0.97384, -1.98681, -13.42244],
"rotation": [-135, 0, 0],
"uv": {
"north": {"uv": [58, 14], "uv_size": [0.5, 0.5]},
"east": {"uv": [15, 58], "uv_size": [0.5, 0.5]},
"south": {"uv": [58, 15], "uv_size": [0.5, 0.5]},
"west": {"uv": [16, 58], "uv_size": [0.5, 0.5]},
"up": {"uv": [58, 16], "uv_size": [0.5, 0.5]},
"down": {"uv": [17, 58.5], "uv_size": [0.5, -0.5]}
}
}
]
},
{ {
"name": "flare", "name": "flare",
"parent": "0", "parent": "0",