grondag / Exotic-Matter

Common utility library for Grondag's Minecraft mods
Other
0 stars 0 forks source link

[Crash Report] REI item list model crashes with XmBlockState/XmModelProxy #7

Closed Desempregago closed 4 years ago

Desempregago commented 4 years ago

java.lang.NullPointerException at Not Enough Crashes deobfuscated stack trace.(1.15.2+build.3) at grondag.xm.api.block.XmBlockState.get(XmBlockState.java:54) at grondag.xm.dispatch.XmModelProxy.getQuads(XmModelProxy.java:63) at net.minecraft.client.render.item.ItemRenderer.renderBakedItemModel(ItemRenderer:90) at net.minecraft.client.render.item.ItemRenderer.renderItem(ItemRenderer:123) at me.shedaniel.rei.impl.ItemEntryStack.optimisedRenderBase(ItemEntryStack.java:211) at me.shedaniel.rei.impl.ItemEntryStack.render(ItemEntryStack.java:173) at me.shedaniel.rei.gui.widget.EntryWidget.drawCurrentEntry(EntryWidget.java:173) at me.shedaniel.rei.gui.widget.EntryWidget.render(EntryWidget.java:144) at me.shedaniel.rei.gui.widget.EntryListWidget.render(EntryListWidget.java:313) at me.shedaniel.rei.gui.ContainerScreenOverlay.renderWidgets(ContainerScreenOverlay.java:518) at me.shedaniel.rei.gui.ContainerScreenOverlay.render(ContainerScreenOverlay.java:456) at me.shedaniel.rei.RoughlyEnoughItemsCore.lambda$registerClothEvents$7(RoughlyEnoughItemsCore.java:258) at me.shedaniel.rei.RoughlyEnoughItemsCore$$Lambda$2368/0000000000000000.render(Unknown Source) at net.minecraft.client.gui.screen.Screen.handler$zob000$onPostDraw(Screen:591) at net.minecraft.client.gui.screen.Screen.render(Screen:83) at net.minecraft.client.gui.screen.ingame.ContainerScreen.render(ContainerScreen:87) at net.minecraft.client.gui.screen.ingame.AbstractInventoryScreen.render(AbstractInventoryScreen:1041) at net.minecraft.client.gui.screen.ingame.InventoryScreen.render(InventoryScreen:91) at net.minecraft.client.render.GameRenderer.render(GameRenderer:604) at net.minecraft.client.MinecraftClient.render(MinecraftClient:989) at net.minecraft.client.MinecraftClient.run(MinecraftClient:619) at net.minecraft.client.main.Main.main(Main:204) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:567) at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:193) at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:138) at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:26)

Desempregago commented 4 years ago

Exotic Matter Library 1.16.293

Desempregago commented 4 years ago

REI 3.3.17

EDIT: Updated to 3.3.18 and it still crashes

grondag commented 4 years ago

Thank you for the report. So far I am unable to duplicate. Please confirm you're running on MC 1.15.2 and describe steps to reproduce. Full crash log would also be helpful.

Desempregago commented 4 years ago

Open Inventory > Scroll through REI pages > Go to Facility's page > Game crashes

Desempregago commented 4 years ago

Complete Crash Report

Desempregago commented 4 years ago

justastranger commented 4 years ago

I'm getting this crash as well. Game runs fine up until the moment an item from Facility gets shown. I'm running optifabric if that helps, though it looks like Fogrits isn't.

https://paste.ee/p/6EvzA

grondag commented 4 years ago

In both of these cases it appears the Indigo renderer is disabled. In the first case, Sodium is installed. Sodium declares itself as a Fabric renderer - which disabled Indigo - but (I'm guessing) does not yet implement the renderer API. There's a good chance the author of Sodium will eventually correct this problem.

Optifine/OptiFabric also do not (yet) support the renderer API and will not correctly render modded blocks even if it did not crash. OF is closed source and does not attempt to support Fabric - that's why OptiFabric is needed. I'm hopeful but less optimistic that problem will be corrected.

In any case Exotic Matter and dependent mods rely heavily on the Fabric rendering API to do dynamic renders that depend on ItemStack or BlockState + world context. There's no way to support this functionality if the API isn't working.