Angelica

Angelica

9.7k Downloads

OpenComputers robots in inventory/NEI cause lighting glitches and crashes

LekKit opened this issue ยท 3 comments

commented

Your GTNH Discord Username

LekKit#4400

Mod Version

1.0.0-alpha52

Java Version

Java 8

Graphics Card Vendor

Intel iGPU

Bug Report

Having OpenComputers robots (Creatix) in inventory or stumbling upon them in NEI causes lighting glitches[1] and Xaeros' Minimap crash later on [2].
Resizing the client GUI crashes the game too [3].

Exiting to the main menu afterwards, every button together with the Minecraft logo looks darkened [4].

Disabling OpenGL state cache doesn't help.

It is in fact highly similar to #274. Maybe it regressed again?

Stumbled this upon modding. I have later removed all the mods except OC, same story. It is kinda hard to reproduce screenshots because of random crashes like [3].

[1] Screenshots:

Before:
2024-07-09_19 13 19

After (broken inventory & world lighting):
2024-07-09_19 13 28

2024-07-09_19 14 34

[2] Xaeros Minimap crash (if present):

java.lang.RuntimeException: Xaero's Minimap (1.7.10_21.10.41) has crashed! Please report here: bit.ly/XaeroMMIssues
    at xaero.common.minimap.MinimapInterface.checkCrashes(MinimapInterface.java:51)
    at xaero.common.minimap.MinimapProcessor.onRender(MinimapProcessor.java:150)
    at xaero.common.minimap.MinimapInterfaceInstance.render(MinimapInterfaceInstance.java:20)
    at xaero.common.interfaces.render.InterfaceRenderer.renderInterfaces(InterfaceRenderer.java:52)
    at xaero.common.events.ForgeEventHandler.handleRenderGameOverlayEventPreOverridable(ForgeEventHandler.java:73)
    at xaero.common.events.ForgeEventHandler.handleRenderGameOverlayEventPre(ForgeEventHandler.java:88)
    at cpw.mods.fml.common.eventhandler.ASMEventHandler_220_ForgeEventHandler_handleRenderGameOverlayEventPre_Pre.invoke(.dynamic)
    at cpw.mods.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:54)
    at cpw.mods.fml.common.eventhandler.EventBus.post(EventBus.java:140)
    at net.minecraftforge.client.GuiIngameForge.pre(GuiIngameForge.java:895)
    at net.minecraftforge.client.GuiIngameForge.renderHelmet(GuiIngameForge.java:241)
    at net.minecraftforge.client.GuiIngameForge.callRenderHelmet(GuiIngameForge.java)
    at com.gtnewhorizons.angelica.hudcaching.HUDCaching.renderCachedHud(HUDCaching.java:170)
    at net.minecraft.client.renderer.EntityRenderer.redirect$zdj000$angelica$renderCachedHUD(EntityRenderer.java:3568)
    at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1038)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1001)
    at net.minecraft.client.Minecraft.run(Minecraft.java:4110)
    at net.minecraft.client.main.Main.main(SourceFile:148)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100)
    at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
    at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)
Caused by: java.lang.RuntimeException: glCheckFramebufferStatus returned unknown status:0
    at xaero.common.graphics.ImprovedFramebuffer.checkFramebufferComplete(ImprovedFramebuffer.java:213)
    at xaero.common.graphics.ImprovedFramebuffer.createBindFramebuffer(ImprovedFramebuffer.java:37)
    at net.minecraft.client.shader.Framebuffer.<init>(Framebuffer.java:37)
    at xaero.common.graphics.ImprovedFramebuffer.<init>(ImprovedFramebuffer.java:23)
    at xaero.common.minimap.render.MinimapFBORenderer.loadFrameBuffer(MinimapFBORenderer.java:54)
    at xaero.common.minimap.MinimapProcessor.onRender(MinimapProcessor.java:137)
    ... 25 more

[3] Client window resize crash:

java.lang.RuntimeException: glCheckFramebufferStatus returned unknown status:0
    at net.minecraft.client.shader.Framebuffer.checkFramebufferComplete(Framebuffer.java:176)
    at net.minecraft.client.shader.Framebuffer.createBindFramebuffer(Framebuffer.java:57)
    at net.minecraft.client.shader.Framebuffer.<init>(Framebuffer.java:37)
    at net.minecraft.client.LoadingScreenRenderer.<init>(LoadingScreenRenderer.java:31)
    at net.minecraft.client.Minecraft.resize(Minecraft.java:1553)
    at net.minecraft.client.Minecraft.func_147120_f(Minecraft.java:1099)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1040)
    at net.minecraft.client.Minecraft.run(Minecraft.java:4110)
    at net.minecraft.client.main.Main.main(SourceFile:148)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100)
    at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
    at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)

[4] Main menu after the glitch:

2024-07-09_19-02

Mod List or GTNH Pack Version

mcp{9.05} [Minecraft Coder Pack] (minecraft.jar)
FML{7.10.99.99} [Forge Mod Loader] (forge-1.7.10-10.13.4.1614-1.7.10-universal.jar)
Forge{10.13.4.1614} [Minecraft Forge] (forge-1.7.10-10.13.4.1614-1.7.10-universal.jar)
CodeChickenCore{1.2.1} [CodeChicken Core] (minecraft.jar)
NotEnoughItems{2.5.14-GTNH-pre} [NotEnoughItems] (NotEnoughItems-2.5.14-GTNH-pre.jar)
OpenComputers|Core{1.8.3} [OpenComputers (Core)] (minecraft.jar)
xaerominimap_core{1.7.10-1.0} [XaeroMinimapCore] (minecraft.jar)
xaeroworldmap_core{1.7.10-1.0} [XaeroWorldMapCore] (minecraft.jar)
ClientFixer{1.0} [ClientFixer] (minecraft.jar)
unimixins{0.1.17} [UniMixins] (+unimixins-all-1.7.10-0.1.17.jar)
unimixins-mixin{0.1.17} [UniMixins: Mixin (UniMix)] (+unimixins-all-1.7.10-0.1.17.jar)
unimixins-compat{0.1.17} [UniMixins: Compatibility] (+unimixins-all-1.7.10-0.1.17.jar)
mixingasm{0.3} [UniMixins: Mixingasm] (+unimixins-all-1.7.10-0.1.17.jar)
spongemixins{2.0.1} [UniMixins: SpongeMixins] (+unimixins-all-1.7.10-0.1.17.jar)
mixinbooterlegacy{1.2.1} [UniMixins: MixinBooterLegacy] (+unimixins-all-1.7.10-0.1.17.jar)
gasstation{0.5.1} [UniMixins: GasStation] (+unimixins-all-1.7.10-0.1.17.jar)
gtnhmixins{2.2.0} [UniMixins: GTNHMixins] (+unimixins-all-1.7.10-0.1.17.jar)
mixinextras{0.1.17} [UniMixins: MixinExtras] (+unimixins-all-1.7.10-0.1.17.jar)
bspkrsCore{6.15} [bspkrsCore] ([1.7.10]bspkrsCore-universal-6.15.jar)
ArmorStatusHUD{1.28} [ArmorStatusHUD] ([1.7.10]ArmorStatusHUD-client-1.28.jar)
embeddium{1.0.0-alpha52} [Embeddium] (angelica-1.0.0-alpha52.jar)
notfine{1.0.0-alpha52} [NotFine] (angelica-1.0.0-alpha52.jar)
mcpatcherforge{1.0.0-alpha} [MCPatcherForge] (angelica-1.0.0-alpha52.jar)
gtnhlib{0.3.1} [GTNH Lib] (gtnhlib-0.3.1.jar)
hodgepodge{2.5.4} [Hodgepodge] (hodgepodge-2.5.4.jar)
angelica{1.0.0-alpha52} [Angelica] (angelica-1.0.0-alpha52.jar)
bettercrashes{1.4.0-GTNH} [BetterCrashes] (bettercrashes-1.4.0-GTNH.jar)
ComputerCraft{1.75} [ComputerCraft] (ComputerCraft1.75.jar)
coretweaks{0.3.3.2} [CoreTweaks] (CoreTweaks-1.7.10-0.3.3.2+nomixin.jar)
endercore{1.7.10-0.2.0.39_beta} [EnderCore] (EnderCore-1.7.10-0.2.0.39_beta.jar)
inventorytweaks{1.59-dev-152-cf6e263} [Inventory Tweaks] (InventoryTweaks_1.7.10_1.59_dev_152.jar)
NBTEdit{1.7.2.2} [In-game NBTEdit] (nbtedit_1.7.10.jar)
NEIAddons{1.12.15.41} [NEI Addons] (neiaddons-1.12.15.41-mc1.7.10.jar)
NEIAddons|Developer{1.12.15.41} [NEI Addons: Developer Tools] (neiaddons-1.12.15.41-mc1.7.10.jar)
NEIAddons|AppEng{1.12.15.41} [NEI Addons: Applied Energistics 2] (neiaddons-1.12.15.41-mc1.7.10.jar)
NEIAddons|Botany{1.12.15.41} [NEI Addons: Botany] (neiaddons-1.12.15.41-mc1.7.10.jar)
NEIAddons|Forestry{1.12.15.41} [NEI Addons: Forestry] (neiaddons-1.12.15.41-mc1.7.10.jar)
NEIAddons|CraftingTables{1.12.15.41} [NEI Addons: Crafting Tables] (neiaddons-1.12.15.41-mc1.7.10.jar)
NEIAddons|ExNihilo{1.12.15.41} [NEI Addons: Ex Nihilo] (neiaddons-1.12.15.41-mc1.7.10.jar)
ForgeMultipart{1.2.0.345} [Forge Multipart] (ForgeMultipart-1.7.10-1.2.0.345-universal.jar)
OpenComputers{1.8.3} [OpenComputers] (OpenComputers-MC1.7.10-1.8.3+089dd28-universal.jar)
scev{0.1.0} [Scalar Evolution] (scev-0.1.0.jar)
skinport{1.7.10-v10d} [SkinPort] (SkinPort-1.7.10-v10d.jar)
Waila{1.5.10} [Waila] (Waila-1.5.10_1.7.10.jar)
WailaHarvestability{1.1.6} [Waila Harvestability] (WailaHarvestability-mc1.7.10-1.1.6.jar)
wailaplugins{MC1.7.10-0.2.0-23} [WAILA Plugins] (WAILAPlugins-MC1.7.10-0.2.0-23.jar)
XaeroMinimap{21.10.41} [Xaero's Minimap] (Xaeros_Minimap_21.10.41_Forge_1.7.10.jar)
XaeroWorldMap{1.14.1.31} [Xaero's World Map] (XaerosWorldMap_1.14.1.31_Forge_1.7.10.jar)
McMultipart{1.2.0.345} [Minecraft Multipart Plugin] (ForgeMultipart-1.7.10-1.2.0.345-universal.jar)
ForgeMicroblock{1.2.0.345} [Forge Microblocks] (ForgeMultipart-1.7.10-1.2.0.345-universal.jar)

Final Checklist

  • I have searched the issues and haven't found a similar issue.
  • I have read the known incompatibilities and this is not related to one of those.
  • I am running an officially released version. (Or, if I've compiled it myself I plan to fix the issue)
  • This issue is not related to a feature that is disabed by default - Shaders, MCPF, etc. [They'll be enabled when they're ready for testing]
commented

They also apparently affect OpenGL FBO's in some weird way that causes crash on any FBO manipulation afterwards.

commented

Can definitely confirm that OC Robots cause lighting issues. Even when they exist in world too they are... weird... like the top half of them goes majorly transparent for many frames at a time randomly, it's very weird, but in inventory they darken out everything after (are they leaking GL state?).

commented

Update with Angelica 1.0.0-beta1:

  • Looking at OC robots in inventory no longer corrupts the GUI
  • Holding robot in hand corrupts the GUI again + weird light flickering
  • Placing the robot leads to the same crash with Xaeros minimap
  • When returning to BetterCrash menu, a recursive crash is happening - the client never recovers:
org.lwjgl.opengl.OpenGLException: Cannot use Buffers when Pixel Unpack Buffer Object is enabled
    at org.lwjgl.opengl.GLChecks.ensureUnpackPBOdisabled(GLChecks.java:119)
    at org.lwjgl.opengl.GL11.glTexSubImage2D(GL11.java:2982)
    at net.minecraft.client.renderer.texture.TextureUtil.uploadTextureSub(TextureUtil.java:187)
    at net.minecraft.client.renderer.texture.TextureUtil.uploadTextureMipmap(TextureUtil.java:170)
    at net.minecraft.client.renderer.texture.TextureAtlasSprite.updateAnimation(TextureAtlasSprite.java:152)
    at net.minecraft.client.renderer.texture.TextureMap.updateAnimations(TextureMap.java:574)
    at net.minecraft.client.renderer.texture.TextureMap.tick(TextureMap.java:430)
    at net.minecraft.client.renderer.texture.TextureManager.tick(TextureManager.java:149)
    at net.minecraft.client.Minecraft.runTick(Minecraft.java:1609)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:973)
    at net.minecraft.client.Minecraft.run(Minecraft.java:4110)
    at net.minecraft.client.main.Main.main(SourceFile:148)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100)
    at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
    at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)

Now I can't play that world at all. Crashes on entering the world:

java.lang.RuntimeException: glCheckFramebufferStatus returned unknown status:0
    at net.minecraft.client.shader.Framebuffer.checkFramebufferComplete(Framebuffer.java:176)
    at net.minecraft.client.shader.Framebuffer.createBindFramebuffer(Framebuffer.java:57)
    at com.gtnewhorizons.angelica.hudcaching.HUDCaching.resetFramebuffer(HUDCaching.java:223)
    at com.gtnewhorizons.angelica.hudcaching.HUDCaching.renderCachedHud(HUDCaching.java:141)
    at net.minecraft.client.renderer.EntityRenderer.redirect$zdh000$angelica$renderCachedHUD(EntityRenderer.java:3568)
    at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1038)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1001)
    at net.minecraft.client.Minecraft.run(Minecraft.java:4110)
    at net.minecraft.client.main.Main.main(SourceFile:148)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
    at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:100)
    at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
    at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)