Canvas Renderer

Canvas Renderer

202k Downloads

NPE Crash with VF after resource reload

spiralhalo opened this issue ยท 0 comments

commented

System Informatinon

  • Minecraft Version: 1.17
  • Canvas Version: canvas-mc117-1.17-1.0.1739 (build just after the vf commits, not latest as of writing)
  • Operating System: Windows 10
  • Graphics Card: Nvidia geforce RTX 2060 super

Other mods and versions installed

  • audiooutput-0.0.4
  • blast-1.6.2
  • canvas-mc117-1.17-1.0.1739
  • fabric-api-0.34.8+1.17
  • modmenu-2.0.0-beta.5
  • notenoughanimations-1.3.0
  • PresenceFootsteps-r31-1.17-rc1
  • TRansliterationLib-1.1.0

How you triggered the behavior

  • Enable vf in config json
  • Launch minecraft
  • Enter world
  • Add a resource pack

What you expected would happen

  • Nothing

What actually happened

  • Crash after the resources finished reloading

Logs and screenshots

FULL LOG: https://gist.github.com/spiralhalo/5d3380963f8b56a70836edc18f8a2709

java.lang.NullPointerException: Cannot read field "data" because the return value of "grondag.canvas.vf.index.VfVertex.fromIndex(int)" is null
	at grondag.canvas.buffer.encoding.ArrayVertexCollector.getDistanceSqVf(ArrayVertexCollector.java:208)
	at grondag.canvas.buffer.encoding.ArrayVertexCollector.sortQuads(ArrayVertexCollector.java:123)
	at grondag.canvas.terrain.region.RegionBuildState.prepareTranslucentIfNeeded(RegionBuildState.java:58)
	at grondag.canvas.terrain.region.RenderRegion.buildTerrain(RenderRegion.java:452)
	at grondag.canvas.terrain.region.RenderRegion.rebuildOnMainThread(RenderRegion.java:519)
	at grondag.canvas.terrain.region.RegionRebuildManager.buildNearRegionIfNeeded(RegionRebuildManager.java:121)
	at grondag.canvas.terrain.region.NeighborRegions.forEachAvailable(NeighborRegions.java:66)
	at grondag.canvas.terrain.occlusion.TerrainIterator.buildNearIfNeeded(TerrainIterator.java:113)
	at grondag.canvas.terrain.occlusion.TerrainIterator.prepare(TerrainIterator.java:122)
	at grondag.canvas.render.world.CanvasWorldRenderer.setupTerrain(CanvasWorldRenderer.java:193)
	at grondag.canvas.render.world.CanvasWorldRenderer.renderWorld(CanvasWorldRenderer.java:289)
	at grondag.canvas.render.world.CanvasWorldRenderer.method_22710(CanvasWorldRenderer.java:790)
	at net.minecraft.class_757.method_3188(class_757.java:1001)
	at net.minecraft.class_757.method_3192(class_757.java:806)
	at net.minecraft.class_310.method_1523(class_310.java:1114)
	at net.minecraft.class_310.method_1514(class_310.java:730)
	at net.minecraft.client.main.Main.main(Main.java:217)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226)
	at net.fabricmc.loader.launch.knot.Knot.launch(Knot.java:146)
	at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:28)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:567)
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196)
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231)
	at org.multimc.EntryPoint.listen(EntryPoint.java:143)
	at org.multimc.EntryPoint.main(EntryPoint.java:34)