格洛克17全身发光(恼

This commit is contained in:
Atsuishio 2025-05-16 18:50:57 +08:00 committed by Light_Quanta
parent 8f6c6145db
commit 24bba05584
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
5 changed files with 61 additions and 121 deletions

View file

@ -1,28 +0,0 @@
package com.atsuishio.superbwarfare.client.layer.gun;
import com.atsuishio.superbwarfare.Mod;
import com.atsuishio.superbwarfare.client.ModRenderTypes;
import com.atsuishio.superbwarfare.item.gun.handgun.Glock17Item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.renderer.GeoRenderer;
import software.bernie.geckolib.renderer.layer.GeoRenderLayer;
public class Glock17LightLayer extends GeoRenderLayer<Glock17Item> {
private static final ResourceLocation LAYER = Mod.loc("textures/item/glock17_e.png");
public Glock17LightLayer(GeoRenderer<Glock17Item> itemGeoRenderer) {
super(itemGeoRenderer);
}
@Override
public void render(PoseStack poseStack, Glock17Item animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) {
RenderType glowRenderType = ModRenderTypes.ILLUMINATED.apply(LAYER);
getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 0xFFFFFFFF);
}
}

View file

@ -1,28 +0,0 @@
package com.atsuishio.superbwarfare.client.layer.gun;
import com.atsuishio.superbwarfare.Mod;
import com.atsuishio.superbwarfare.client.ModRenderTypes;
import com.atsuishio.superbwarfare.item.gun.handgun.Glock18Item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation;
import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.renderer.GeoRenderer;
import software.bernie.geckolib.renderer.layer.GeoRenderLayer;
public class Glock18LightLayer extends GeoRenderLayer<Glock18Item> {
private static final ResourceLocation LAYER = Mod.loc("textures/item/glock17_e.png");
public Glock18LightLayer(GeoRenderer<Glock18Item> itemGeoRenderer) {
super(itemGeoRenderer);
}
@Override
public void render(PoseStack poseStack, Glock18Item animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) {
RenderType glowRenderType = ModRenderTypes.ILLUMINATED.apply(LAYER);
getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 0xFFFFFFFF);
}
}

View file

@ -1,6 +1,7 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.CustomRenderer;
import com.atsuishio.superbwarfare.client.model.item.Glock17ItemModel; import com.atsuishio.superbwarfare.client.model.item.Glock17ItemModel;
import com.atsuishio.superbwarfare.item.gun.GunItem; import com.atsuishio.superbwarfare.item.gun.GunItem;
import com.atsuishio.superbwarfare.item.gun.handgun.Glock17Item; import com.atsuishio.superbwarfare.item.gun.handgun.Glock17Item;
@ -14,17 +15,14 @@ import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer;
import java.util.HashSet; import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> { public class Glock17ItemRenderer extends CustomRenderer<Glock17Item> {
public Glock17ItemRenderer() { public Glock17ItemRenderer() {
super(new Glock17ItemModel()); super(new Glock17ItemModel());
// TODO layer
// this.addRenderLayer(new Glock17LightLayer(this));
} }
@Override @Override

View file

@ -1,6 +1,7 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.CustomRenderer;
import com.atsuishio.superbwarfare.client.model.item.Glock18ItemModel; import com.atsuishio.superbwarfare.client.model.item.Glock18ItemModel;
import com.atsuishio.superbwarfare.item.gun.GunItem; import com.atsuishio.superbwarfare.item.gun.GunItem;
import com.atsuishio.superbwarfare.item.gun.handgun.Glock18Item; import com.atsuishio.superbwarfare.item.gun.handgun.Glock18Item;
@ -14,17 +15,14 @@ import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.cache.object.GeoBone;
import software.bernie.geckolib.renderer.GeoItemRenderer;
import java.util.HashSet; import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> { public class Glock18ItemRenderer extends CustomRenderer<Glock18Item> {
public Glock18ItemRenderer() { public Glock18ItemRenderer() {
super(new Glock18ItemModel()); super(new Glock18ItemModel());
// TODO layer
// this.addRenderLayer(new Glock18LightLayer(this));
} }
@Override @Override

View file

@ -1589,6 +1589,61 @@
} }
] ]
}, },
{
"name": "guan",
"parent": "body",
"pivot": [0, 2.55781, -0.55955],
"cubes": [
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 22.5],
"uv": {
"north": {"uv": [22, 31], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [10, 19], "uv_size": [0.25, 4]},
"down": {"uv": [11, 23], "uv_size": [0.25, -4]}
}
},
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 67.5],
"uv": {
"north": {"uv": [31, 22], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [13, 19], "uv_size": [0.25, 4]},
"down": {"uv": [15, 23], "uv_size": [0.25, -4]}
}
},
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 112.5],
"uv": {
"north": {"uv": [23, 31], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [17, 19], "uv_size": [0.25, 4]},
"down": {"uv": [19, 21], "uv_size": [0.25, -4]}
}
},
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 157.5],
"uv": {
"north": {"uv": [31, 23], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [18, 19], "uv_size": [0.25, 4]},
"down": {"uv": [0, 24], "uv_size": [0.25, -4]}
}
}
]
},
{ {
"name": "huatao", "name": "huatao",
"parent": "body", "parent": "body",
@ -1677,7 +1732,7 @@
] ]
}, },
{ {
"name": "glow", "name": "glow_illuminated",
"parent": "jimiao", "parent": "jimiao",
"pivot": [0.06161, -2.12152, 0.88585], "pivot": [0.06161, -2.12152, 0.88585],
"cubes": [ "cubes": [
@ -1730,7 +1785,7 @@
] ]
}, },
{ {
"name": "group2", "name": "hougai",
"parent": "huatao", "parent": "huatao",
"pivot": [0.12323, -5.38367, 0.94374], "pivot": [0.12323, -5.38367, 0.94374],
"cubes": [ "cubes": [
@ -2546,61 +2601,6 @@
} }
] ]
}, },
{
"name": "guan",
"parent": "body",
"pivot": [0, 2.55781, -0.55955],
"cubes": [
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 22.5],
"uv": {
"north": {"uv": [22, 31], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [10, 19], "uv_size": [0.25, 4]},
"down": {"uv": [11, 23], "uv_size": [0.25, -4]}
}
},
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 67.5],
"uv": {
"north": {"uv": [31, 22], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [13, 19], "uv_size": [0.25, 4]},
"down": {"uv": [15, 23], "uv_size": [0.25, -4]}
}
},
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 112.5],
"uv": {
"north": {"uv": [23, 31], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [17, 19], "uv_size": [0.25, 4]},
"down": {"uv": [19, 21], "uv_size": [0.25, -4]}
}
},
{
"origin": [-0.12279, 2.26137, -4.89821],
"size": [0.24557, 0.59288, 5.77732],
"pivot": [0, 2.55781, -2.22955],
"rotation": [0, 0, 157.5],
"uv": {
"north": {"uv": [31, 23], "uv_size": [0.25, 0.5]},
"south": {"uv": [0, 8], "uv_size": [1, 1]},
"up": {"uv": [18, 19], "uv_size": [0.25, 4]},
"down": {"uv": [0, 24], "uv_size": [0.25, -4]}
}
}
]
},
{ {
"name": "Righthand", "name": "Righthand",
"parent": "gun", "parent": "gun",