翻新木仓口火焰
This commit is contained in:
parent
9a565d00dc
commit
a78bfaf004
3 changed files with 41 additions and 10 deletions
|
@ -1,6 +1,5 @@
|
|||
package com.atsuishio.superbwarfare.client;
|
||||
|
||||
import com.atsuishio.superbwarfare.Mod;
|
||||
import com.atsuishio.superbwarfare.event.ClientEventHandler;
|
||||
import com.atsuishio.superbwarfare.item.gun.data.GunData;
|
||||
import com.atsuishio.superbwarfare.item.gun.data.value.AttachmentType;
|
||||
|
@ -19,8 +18,6 @@ import net.minecraft.resources.ResourceLocation;
|
|||
import net.minecraft.util.Mth;
|
||||
import net.minecraft.world.item.ItemDisplayContext;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import org.joml.Matrix3f;
|
||||
import org.joml.Matrix4f;
|
||||
import software.bernie.geckolib.animation.AnimationProcessor;
|
||||
import software.bernie.geckolib.cache.object.GeoBone;
|
||||
import software.bernie.geckolib.util.RenderUtil;
|
||||
|
@ -113,16 +110,16 @@ public class AnimationHelper {
|
|||
RenderUtil.scaleMatrixForBone(stack, bone);
|
||||
RenderUtil.translateAwayFromPivotPoint(stack, bone);
|
||||
PoseStack.Pose pose = stack.last();
|
||||
Matrix3f normal = pose.normal();
|
||||
VertexConsumer vertexConsumer = buffer.getBuffer(RenderType.eyes(Mod.loc("textures/particle/flare.png")));
|
||||
vertex(vertexConsumer, pose, normal, packedLightIn, 0.0F, 0, 0, 1);
|
||||
vertex(vertexConsumer, pose, normal, packedLightIn, 1.0F, 0, 1, 1);
|
||||
vertex(vertexConsumer, pose, normal, packedLightIn, 1.0F, 1, 1, 0);
|
||||
vertex(vertexConsumer, pose, normal, packedLightIn, 0.0F, 1, 0, 0);
|
||||
VertexConsumer vertexConsumer = buffer.getBuffer(ModRenderTypes.MUZZLE_FLASH_TYPE);
|
||||
vertex(vertexConsumer, pose, packedLightIn, 0.0F, 0, 0, 1);
|
||||
vertex(vertexConsumer, pose, packedLightIn, 1.0F, 0, 1, 1);
|
||||
vertex(vertexConsumer, pose, packedLightIn, 1.0F, 1, 1, 0);
|
||||
vertex(vertexConsumer, pose, packedLightIn, 0.0F, 1, 0, 0);
|
||||
stack.popPose();
|
||||
}
|
||||
}
|
||||
private static void vertex(VertexConsumer pConsumer, PoseStack.Pose pPose, Matrix3f pNormal, int pLightmapUV, float pX, float pY, int pU, int pV) {
|
||||
|
||||
private static void vertex(VertexConsumer pConsumer, PoseStack.Pose pPose, int pLightmapUV, float pX, float pY, int pU, int pV) {
|
||||
pConsumer.addVertex(pPose, pX - 0.5F, pY - 0.5F, 0.0F)
|
||||
.setColor(255, 255, 255, 255)
|
||||
.setUv((float) pU, (float) pV)
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.atsuishio.superbwarfare.client;
|
||||
|
||||
import com.atsuishio.superbwarfare.Mod;
|
||||
import com.mojang.blaze3d.vertex.DefaultVertexFormat;
|
||||
import com.mojang.blaze3d.vertex.VertexFormat;
|
||||
import net.minecraft.Util;
|
||||
|
@ -30,4 +31,37 @@ public class ModRenderTypes extends RenderType {
|
|||
.setCullState(NO_CULL).setOverlayState(NO_OVERLAY).setWriteMaskState(COLOR_WRITE).createCompositeState(false);
|
||||
return RenderType.create("illuminated", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.QUADS, 256, true, false, state);
|
||||
});
|
||||
|
||||
//DickSheep的恩情还不完
|
||||
|
||||
public static final RenderType MUZZLE_FLASH_TYPE =
|
||||
RenderType.create(
|
||||
"muzzle_flash",
|
||||
DefaultVertexFormat.POSITION_TEX_COLOR, // 注意:格式名改为 POSITION_COLOR_TEX(不是 TEX)
|
||||
VertexFormat.Mode.QUADS,
|
||||
256,
|
||||
false,
|
||||
true,
|
||||
// 使用新的 CompositeState 构造方式
|
||||
RenderType.CompositeState.builder()
|
||||
// 关键修复:使用内置的 POSITION_COLOR_TEX_SHADER(直接调用 ShaderStateShard)
|
||||
.setShaderState(RENDERTYPE_EYES_SHADER)
|
||||
// 启用半透明(确保正确排序)
|
||||
.setTransparencyState(RenderStateShard.TRANSLUCENT_TRANSPARENCY)
|
||||
// 绑定贴图(替换为你的路径)
|
||||
.setTextureState(new RenderStateShard.TextureStateShard(
|
||||
Mod.loc("textures/particle/flare.png"),
|
||||
false, // 不模糊
|
||||
false // 不生成Mipmap
|
||||
))
|
||||
// 禁用光照和覆盖颜色
|
||||
.setLightmapState(RenderStateShard.NO_LIGHTMAP)
|
||||
.setOverlayState(RenderStateShard.NO_OVERLAY)
|
||||
// 深度测试和写入设置
|
||||
// .setDepthTestState(RenderStateShard.NO_DEPTH_TEST)
|
||||
.setWriteMaskState(RenderStateShard.COLOR_WRITE)
|
||||
.createCompositeState(false)
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 218 KiB After Width: | Height: | Size: 174 KiB |
Loading…
Add table
Reference in a new issue