From 929a27c1494e7dd34370352f9dc2d2780f1613b9 Mon Sep 17 00:00:00 2001 From: MC_XiaoHei Date: Wed, 7 Jun 2023 14:31:05 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=AF=B91.19.4=E5=81=9A=E5=87=BA=E4=BA=86?= =?UTF-8?q?=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle.properties | 10 +++++----- .../net/torocraft/flighthud/HudComponent.java | 17 ++++++++++------- .../net/torocraft/flighthud/HudRenderer.java | 2 +- .../flighthud/components/PitchIndicator.java | 5 +++-- 4 files changed, 19 insertions(+), 15 deletions(-) diff --git a/gradle.properties b/gradle.properties index abcccdb..1411624 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,12 +8,12 @@ org.gradle.jvmargs=-Xmx1G # To remap the mixin locations: # gradlew migrateMappings --mappings "1.16.1+build.9" -minecraft_version=1.19 -yarn_mappings=1.19+build.1 -loader_version=0.14.7 +minecraft_version=1.19.4 +yarn_mappings=1.19.4+build.2 +loader_version=0.14.21 -#Fabric api -fabric_version=0.55.3+1.19 +#Fabric apid +fabric_version=0.83.0+1.19.4 # Mod Properties mod_version = 1.19-fabric-1 diff --git a/src/main/java/net/torocraft/flighthud/HudComponent.java b/src/main/java/net/torocraft/flighthud/HudComponent.java index 08be596..4067bb7 100644 --- a/src/main/java/net/torocraft/flighthud/HudComponent.java +++ b/src/main/java/net/torocraft/flighthud/HudComponent.java @@ -10,9 +10,9 @@ import net.minecraft.client.render.VertexFormats; import net.minecraft.client.render.VertexFormat; import net.minecraft.client.util.math.MatrixStack; -import net.minecraft.util.math.Vec3f; -import net.minecraft.util.math.Matrix4f; import net.torocraft.flighthud.config.HudConfig; +import org.joml.Matrix4f; +import org.joml.Vector3f; public abstract class HudComponent extends DrawableHelper { @@ -27,7 +27,8 @@ protected int i(double d) { protected void drawPointer(MatrixStack m, float x, float y, float rot) { m.push(); m.translate(x, y, 0); - m.multiply(Vec3f.POSITIVE_Z.getDegreesQuaternion(rot + 45)); +// m.multiply(Vector3f.POSITIVE_Z.getDegreesQuaternion(rot + 45)); + m.multiply(new org.joml.Quaternionf().fromAxisAngleDeg(new org.joml.Vector3f(0, 0, 1),rot+45)); drawVerticalLine(m, 0, 0, 5, CONFIG.color); drawHorizontalLine(m, 0, 5, 0, CONFIG.color); m.pop(); @@ -129,16 +130,18 @@ private static void fill(Matrix4f matrix, float x1, float y1, float x2, float y2 float b = (float) (color & 255) / 255.0F; BufferBuilder bufferBuilder = Tessellator.getInstance().getBuffer(); RenderSystem.enableBlend(); - RenderSystem.disableTexture(); +// RenderSystem.disableTexture(); RenderSystem.defaultBlendFunc(); - RenderSystem.setShader(GameRenderer::getPositionColorShader); +// RenderSystem.setShader(GameRenderer::getPositionColorShader); + RenderSystem.setShader(GameRenderer::getPositionColorProgram); bufferBuilder.begin(VertexFormat.DrawMode.QUADS, VertexFormats.POSITION_COLOR); bufferBuilder.vertex(matrix, x1, y2, 0.0F).color(r, g, b, alpha).next(); bufferBuilder.vertex(matrix, x2, y2, 0.0F).color(r, g, b, alpha).next(); bufferBuilder.vertex(matrix, x2, y1, 0.0F).color(r, g, b, alpha).next(); bufferBuilder.vertex(matrix, x1, y1, 0.0F).color(r, g, b, alpha).next(); - BufferRenderer.drawWithShader(bufferBuilder.end()); - RenderSystem.enableTexture(); +// BufferRenderer.drawWithShader(bufferBuilder.end()); + BufferRenderer.drawWithGlobalProgram(bufferBuilder.end()); +// RenderSystem.enableTexture(); RenderSystem.disableBlend(); } } diff --git a/src/main/java/net/torocraft/flighthud/HudRenderer.java b/src/main/java/net/torocraft/flighthud/HudRenderer.java index aceaebc..2012740 100644 --- a/src/main/java/net/torocraft/flighthud/HudRenderer.java +++ b/src/main/java/net/torocraft/flighthud/HudRenderer.java @@ -53,7 +53,7 @@ public void render(MatrixStack m, float partial, MinecraftClient client) { m.push(); if (HudComponent.CONFIG.scale != 1d) { - float scale = 1 / (float) HudComponent.CONFIG.scale; + float scale = 1 / HudComponent.CONFIG.scale; m.scale(scale, scale, scale); } diff --git a/src/main/java/net/torocraft/flighthud/components/PitchIndicator.java b/src/main/java/net/torocraft/flighthud/components/PitchIndicator.java index d75ea9e..c8024c1 100644 --- a/src/main/java/net/torocraft/flighthud/components/PitchIndicator.java +++ b/src/main/java/net/torocraft/flighthud/components/PitchIndicator.java @@ -2,10 +2,10 @@ import net.minecraft.client.MinecraftClient; import net.minecraft.client.util.math.MatrixStack; -import net.minecraft.util.math.Vec3f; import net.torocraft.flighthud.Dimensions; import net.torocraft.flighthud.FlightComputer; import net.torocraft.flighthud.HudComponent; +import org.joml.Vector3f; public class PitchIndicator extends HudComponent { private final Dimensions dim; @@ -32,7 +32,8 @@ public void render(MatrixStack m, float partial, MinecraftClient mc) { if (CONFIG.pitchLadder_showRoll) { m.push(); m.translate(b, a, 0); - m.multiply(Vec3f.POSITIVE_Z.getDegreesQuaternion(roll)); +// m.multiply(Vector3f.POSITIVE_Z.getDegreesQuaternion(roll)); + m.multiply(new org.joml.Quaternionf().fromAxisAngleDeg(new org.joml.Vector3f(0, 0, 1),roll)); m.translate(-b, -a, 0); } From f31e66e527e56fcb0ebabeff7059093cfc1b960b Mon Sep 17 00:00:00 2001 From: MC_XiaoHei Date: Sat, 10 Jun 2023 14:19:28 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=85=BC=E5=AE=B91.20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gradle.properties | 23 +++++++-------- .../net/torocraft/flighthud/HudComponent.java | 28 +++++++++++-------- .../flighthud/mixin/InGameHudMixin.java | 6 ++-- 3 files changed, 29 insertions(+), 28 deletions(-) diff --git a/gradle.properties b/gradle.properties index 1411624..7f1a603 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,21 +1,18 @@ # Done to increase the memory available to gradle. org.gradle.jvmargs=-Xmx1G -# Fabric Properties -# check these on https://fabricmc.net/versions.html -# After making changes -# gradlew --refresh-dependencies -# To remap the mixin locations: -# gradlew migrateMappings --mappings "1.16.1+build.9" - -minecraft_version=1.19.4 -yarn_mappings=1.19.4+build.2 +minecraft_version=1.20 +yarn_mappings=1.20+build.1 loader_version=0.14.21 -#Fabric apid -fabric_version=0.83.0+1.19.4 - +#Fabric api +fabric_version=0.83.0+1.20 # Mod Properties -mod_version = 1.19-fabric-1 + + +# Dependencies +# check this on https://modmuss50.me/fabric.html +mod_version = 1.20-SNAPSHOT + maven_group = net.torocraft archives_base_name = flighthud \ No newline at end of file diff --git a/src/main/java/net/torocraft/flighthud/HudComponent.java b/src/main/java/net/torocraft/flighthud/HudComponent.java index 4067bb7..1a6c9f4 100644 --- a/src/main/java/net/torocraft/flighthud/HudComponent.java +++ b/src/main/java/net/torocraft/flighthud/HudComponent.java @@ -2,19 +2,13 @@ import com.mojang.blaze3d.systems.RenderSystem; import net.minecraft.client.MinecraftClient; -import net.minecraft.client.gui.DrawableHelper; -import net.minecraft.client.render.BufferBuilder; -import net.minecraft.client.render.BufferRenderer; -import net.minecraft.client.render.GameRenderer; -import net.minecraft.client.render.Tessellator; -import net.minecraft.client.render.VertexFormats; -import net.minecraft.client.render.VertexFormat; +import net.minecraft.client.font.TextRenderer; +import net.minecraft.client.render.*; import net.minecraft.client.util.math.MatrixStack; import net.torocraft.flighthud.config.HudConfig; import org.joml.Matrix4f; -import org.joml.Vector3f; -public abstract class HudComponent extends DrawableHelper { +public abstract class HudComponent{ public abstract void render(MatrixStack m, float partial, MinecraftClient client); @@ -29,8 +23,8 @@ protected void drawPointer(MatrixStack m, float x, float y, float rot) { m.translate(x, y, 0); // m.multiply(Vector3f.POSITIVE_Z.getDegreesQuaternion(rot + 45)); m.multiply(new org.joml.Quaternionf().fromAxisAngleDeg(new org.joml.Vector3f(0, 0, 1),rot+45)); - drawVerticalLine(m, 0, 0, 5, CONFIG.color); - drawHorizontalLine(m, 0, 5, 0, CONFIG.color); + drawVerticalLine(m, 0, 0, 5);//, CONFIG.color + drawHorizontalLine(m, 0, 5, 0);//, CONFIG.color m.pop(); } @@ -48,7 +42,17 @@ protected void drawFont(MinecraftClient mc, MatrixStack m, String s, float x, fl protected void drawFont(MinecraftClient mc, MatrixStack m, String s, float x, float y, int color) { - mc.textRenderer.draw(m, s, x, y, CONFIG.color); + mc.textRenderer.draw( + s, + x, + y, + color, + false, + m.peek().getPositionMatrix(), + mc.getBufferBuilders().getOutlineVertexConsumers(), + TextRenderer.TextLayerType.NORMAL, + 0, + 255);//, CONFIG.color//m, } protected void drawRightAlignedFont(MinecraftClient mc, MatrixStack m, String s, float x, diff --git a/src/main/java/net/torocraft/flighthud/mixin/InGameHudMixin.java b/src/main/java/net/torocraft/flighthud/mixin/InGameHudMixin.java index 9b0d1b4..18d8ad0 100644 --- a/src/main/java/net/torocraft/flighthud/mixin/InGameHudMixin.java +++ b/src/main/java/net/torocraft/flighthud/mixin/InGameHudMixin.java @@ -1,8 +1,8 @@ package net.torocraft.flighthud.mixin; import net.minecraft.client.MinecraftClient; +import net.minecraft.client.gui.DrawContext; import net.minecraft.client.gui.hud.InGameHud; -import net.minecraft.client.util.math.MatrixStack; import net.torocraft.flighthud.HudRenderer; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -23,7 +23,7 @@ public class InGameHudMixin { private MinecraftClient client; @Inject(method = "render", at = @At("RETURN")) - private void render(MatrixStack ms, float partial, CallbackInfo info) { - hud.render(ms, partial, client); + private void render(DrawContext context, float tickDelta, CallbackInfo ci) { + hud.render(context.getMatrices(), tickDelta, client); } } \ No newline at end of file