Jump to content

1.12.2 - Info bar above inventory bar completely artifacted


Recommended Posts

Posted

I have isolated the issue in the following line of code:

Minecraft.getMinecraft().fontRenderer.drawStringWithShadow(etc)

 

I'm extremely confused as to why it's artifacting the xp bar, health bar, food bar and armour bar. Here's a portion of my code:

// the main code
public void postInit(FMLPostInitializationEvent event) {
    MinecraftForge.EVENT_BUS.register(new MyMod());
}

// MyMod class
public uiCreator;
public MyMod() {
    uiCreator = new UICreator();
}

@SubscribeEvent
public void onGui(RenderGameOverlayEvent event) {
    uiCreator.Create();
}

// UICreator class
public void Create() {
    Minecraft.getMinecraft().fontRenderer.drawStringWithShadow("MyMod", 2, 2, 0xffffff);
}

 

Effectively, the line which is causing the artifacting is `Minecraft.getMinecraft().fontRenderer.drawStringWithShadow("MyMod", 2, 2, 0xffffff);`. I don't understand why. I'm certain it's this line, as removing/commenting out any other portions of code do not fix the artifacting until I comment this line out. I'm extremely confused as to why this is occuring. If anyone has any form of insight, I'd greatly appreciate it

Image of the Artifacting bar

I am a human and this action was performed manually. Please contact Frontear if you have any questions or concerns.

Posted
7 minutes ago, Frontear said:

RenderGameOverlayEvent

RenderGameOverlayEvent gets called once per HUD element. It is called once for health, once for hunger, once for experience, etc. It is additionally called twice with Pre and Post subclasses. You need to 

  1. Subscribe to either Pre or Post instead of the parent event class
  2. Check whether the HUD type the event is fired for is the desired for your case. Otherwise you are drawing your text many times over which is not good for performance.

As for the "artifacting" issue:

When the game renders the HUD it binds the HUD texture once before drawing it. Rendering any text however binds a corresponding font texture. Since you are rendering in the middle of HUD rendering the font texture stays bound and is used to draw the rest of the HUD which leads to incorrect things being drawn. You need to either draw before/after all the HUD or rebind the HUD texture back.

Posted (edited)

Thank you for your response, however the hunger bar continues to be artifacted with Post. I'll try Pre and reupdate this comment. If I use Pre, everything will once again be artifacted, as you said, since it uses a different texture. Post will also artifact the hunger bar still.

 

Edit: I've solved the issue by checking `event.getType()`. Thank you!

 

Edited by Frontear

I am a human and this action was performed manually. Please contact Frontear if you have any questions or concerns.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • seguridad seguridad
    • I am creating a server with mods but when i try tostart it it say in the logs:   [29Jan2025 20:36:50.715] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file /server/libraries/net/minecraftforge/fmlcore/1.20.1-47.3.27/fmlcore-1.20.1-47.3.27.jar is missing mods.toml file 159[29Jan2025 20:36:50.717] [main/DEBUG] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Considering mod file candidate /server/libraries/net/minecraftforge/javafmllanguage/1.20.1-47.3.27/javafmllanguage-1.20.1-47.3.27.jar 160[29Jan2025 20:36:50.717] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file /server/libraries/net/minecraftforge/javafmllanguage/1.20.1-47.3.27/javafmllanguage-1.20.1-47.3.27.jar is missing mods.toml file 161[29Jan2025 20:36:50.718] [main/DEBUG] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Considering mod file candidate /server/libraries/net/minecraftforge/lowcodelanguage/1.20.1-47.3.27/lowcodelanguage-1.20.1-47.3.27.jar 162[29Jan2025 20:36:50.718] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file /server/libraries/net/minecraftforge/lowcodelanguage/1.20.1-47.3.27/lowcodelanguage-1.20.1-47.3.27.jar is missing mods.toml file 163[29Jan2025 20:36:50.719] [main/DEBUG] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Considering mod file candidate /server/libraries/net/minecraftforge/mclanguage/1.20.1-47.3.27/mclanguage-1.20.1-47.3.27.jar 164[29Jan2025 20:36:50.719] [main/WARN] [net.minecraftforge.fml.loading.moddiscovery.ModFileParser/LOADING]: Mod file /server/libraries/net/minecraftforge/mclanguage/1.20.1-47.3.27/mclanguage-1.20.1-47.3.27.jar is missing mods.toml file
    • How do you configure the entity reach of a custom weapon? Asking for 1.21 Minecraft parchment
    • This topic is over a year old. If you are having an issue, please read the FAQ for the proper way to post logs, and create your own thread.
    • hello i have been trying to put this specific pack for a while now but ive been hit with a new error everytime. no matter if its a previous version or if i change the pack format it will just not work please help latest log:https://mclo.gs/b6Qra5d <----- this is with pack version 1.20 no changes done to it debug log: https://mclo.gs/jczkfRK
  • Topics

  • Who's Online (See full list)

    • There are no registered users currently online
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.