GTNewHorizons / GT-New-Horizons-Modpack

A big progressive questing modpack for Minecraft 1.7.10 balanced around the mod GregTech.
https://www.gtnewhorizons.com/
Other
1.01k stars 307 forks source link

Animated blocks in multiblock trophies only animate when their respective block is in view #17261

Open GDCloudstrike opened 2 months ago

GDCloudstrike commented 2 months ago

Your GTNH Discord Username

gdcloud

Your Pack Version

nightly 637

Your Server

SP

Java Version

Java 21

Type of Server

None

Your Expectation

Expected all animated blocks in trophies to work

The Reality

Animated blocks in multiblock trophies only run their animations when the animated block is physically in view, be it in item or block form. Singleblock trophies such as the steam boiler or ME controller work fine.

https://github.com/user-attachments/assets/57b075b1-3f03-40f0-b1bb-dd0ee7ffa932

Your Proposal

fix

Final Checklist

Cardinalstars commented 2 months ago

This only appears when Angelica is in the pack.

RecursivePineapple commented 1 month ago

This seems to be caused by Hodgepodge's animation speedup. I can reproduce it fairly easily in the gt5u dev env by placing any animated block. Disabling the hodgepodge option fixes it (at the expense of 50% of my fps). The strange thing is that this isn't a problem in the full pack (latest nightly) despite the animation speedup being enabled. I tried adding Angelica to the dev env in case that was the solution, but it did nothing.

CookieBrigade commented 1 month ago

This seems to be caused by Hodgepodge's animation speedup. I can reproduce it fairly easily in the gt5u dev env by placing any animated block. Disabling the hodgepodge option fixes it (at the expense of 50% of my fps). The strange thing is that this isn't a problem in the full pack (latest nightly) despite the animation speedup being enabled. I tried adding Angelica to the dev env in case that was the solution, but it did nothing.

Extremely strange since this should happen in full pack as well since Hodgepodge and Angelica use the same method to speed up animated textures. Hodgepodge just disables its own version if it detects angelica. The general idea on how to solve it would be to add an API to angelica so other mods call request a texture update if they render outside the usual pipeline and then hook into that. Following that, its intended for hodgepodge to remove its version since it's kinda redundant. You can follow the start of the conversation that took place over the issue here: https://discord.com/channels/181078474394566657/603348502637969419/1284914420799111269

RecursivePineapple commented 1 month ago

I tried to figure out where the markBlockTextureForUpdate call should be, but strangely enough casings don't have an ISRBH. All of their rendering is handled by vanilla code, which means this problem is entirely in hodgepodge (or a conflicting mixin).

I'm pretty sure this isn't just a problem with casings because I've had a problem with nuclear horizon's animations (they refuse to play regardless of what I do). I have a feeling it's related.

CookieBrigade commented 1 month ago

Ive had issues with hodgepodge not animating textures dev env for a few specific blocks (notably gorge's animated blocks) and I haven't been able to pinpoint why. Though sometimes it magically just works as well.

BlueHero233 commented 1 month ago

Does this have any relation too? https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/15817