Sodium crashing on QuestCraft Port of Minecraft
Villagerjj opened this issue ยท 6 comments
Version information
sodium-fabric-mc1.18.1-0.4.0-alpha6+build.14
Reproduction Steps
- start game
- game crashes
Crash Report file
---- Minecraft Crash Report ----
// Surprise! Haha. Well, this is awkward.
Time: 2/24/22, 1:40 AM
Description: Unexpected error
java.lang.RuntimeException: Shader compilation failed, see log for details
at me.jellysquid.mods.sodium.client.gl.shader.GlShader.(GlShader.java:34)
at me.jellysquid.mods.sodium.client.gl.shader.ShaderLoader.loadShader(ShaderLoader.java:22)
at me.jellysquid.mods.sodium.client.render.chunk.ShaderChunkRenderer.createShader(ShaderChunkRenderer.java:47)
at me.jellysquid.mods.sodium.client.render.chunk.ShaderChunkRenderer.compileProgram(ShaderChunkRenderer.java:38)
at me.jellysquid.mods.sodium.client.render.chunk.ShaderChunkRenderer.begin(ShaderChunkRenderer.java:72)
at me.jellysquid.mods.sodium.client.render.chunk.RegionChunkRenderer.render(RegionChunkRenderer.java:70)
at me.jellysquid.mods.sodium.client.render.chunk.RenderSectionManager.renderLayer(RenderSectionManager.java:289)
at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer(SodiumWorldRenderer.java:220)
at net.minecraft.class_761.method_3251(class_761.java:6464)
at net.minecraft.class_761.method_22710(class_761.java:1259)
at net.minecraft.class_757.method_3188(class_757.java:1031)
at net.minecraft.class_757.method_3192(class_757.java:811)
at net.minecraft.class_310.method_1523(class_310.java:1117)
at net.minecraft.class_310.redirect$bdc000$loop(class_310.java:7129)
at net.minecraft.class_310.method_1514(class_310.java:733)
at net.minecraft.client.main.Main.main(Main.java:238)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:608)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:77)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
A detailed walkthrough of the error, its code path and all known details is as follows:
-- Head --
Thread: Render thread
Stacktrace:
at me.jellysquid.mods.sodium.client.gl.shader.GlShader.(GlShader.java:34)
at me.jellysquid.mods.sodium.client.gl.shader.ShaderLoader.loadShader(ShaderLoader.java:22)
at me.jellysquid.mods.sodium.client.render.chunk.ShaderChunkRenderer.createShader(ShaderChunkRenderer.java:47)
at me.jellysquid.mods.sodium.client.render.chunk.ShaderChunkRenderer.compileProgram(ShaderChunkRenderer.java:38)
at me.jellysquid.mods.sodium.client.render.chunk.ShaderChunkRenderer.begin(ShaderChunkRenderer.java:72)
at me.jellysquid.mods.sodium.client.render.chunk.RegionChunkRenderer.render(RegionChunkRenderer.java:70)
at me.jellysquid.mods.sodium.client.render.chunk.RenderSectionManager.renderLayer(RenderSectionManager.java:289)
at me.jellysquid.mods.sodium.client.render.SodiumWorldRenderer.drawChunkLayer(SodiumWorldRenderer.java:220)
at net.minecraft.class_761.method_3251(class_761.java:6464)
at net.minecraft.class_761.method_22710(class_761.java:1259)
at net.minecraft.class_757.method_3188(class_757.java:1031)
at net.minecraft.class_757.method_3192(class_757.java:811)
-- Affected level --
Details:
All players: 1 total; [class_746['Villagerjj'/1, l='ClientLevel', x=-30.72, y=90.87, z=32.16]]
Chunk stats: 1024, 48
Level dimension: minecraft:overworld
Level spawn location: World: (0,68,0), Section: (at 0,4,0 in 0,4,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511)
Level time: 33906 game time, 33906 day time
Server brand: fabric
Server type: Integrated singleplayer server
Stacktrace:
at net.minecraft.class_638.method_8538(class_638.java:408)
at net.minecraft.class_310.method_1587(class_310.java:2402)
at net.minecraft.class_310.method_1514(class_310.java:757)
at net.minecraft.client.main.Main.main(Main.java:238)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:608)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:77)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
-- Last reload --
Details:
Reload number: 1
Reload reason: initial
Finished: Yes
Packs: Default, assets-v0.zip, Fabric Mods, cullleaves/smartleaves
-- System Details --
Details:
Minecraft Version: 1.18.1
Minecraft Version ID: 1.18.1
Operating System: Linux (aarch64) version Android-10
Java Version: 17-internal, N/A
Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation
Memory: 1139261416 bytes (1086 MiB) / 1610612736 bytes (1536 MiB) up to 1610612736 bytes (1536 MiB)
CPUs: 3
Processor Vendor: 0x41
Processor Name: AArch64 Processor rev 0 (aarch64)
Identifier: 0x41 Family 8 Model 0xd0d Stepping r0xdp14
Microarchitecture: unknown
Frequency (GHz): -0.00
Number of physical packages: 1
Number of physical CPUs: 1
Number of logical CPUs: 8
Graphics card #0 name: unknown
Graphics card #0 vendor: unknown
Graphics card #0 VRAM (MB): 0.00
Graphics card #0 deviceId: unknown
Graphics card #0 versionInfo: unknown
Virtual memory max (MB): 3945.14
Virtual memory used (MB): 4484.34
Swap memory total (MB): 1024.00
Swap memory used (MB): 1.25
JVM Flags: 2 total; -Xms1536M -Xmx1536M
Fabric Mods:
c2me: Concurrent Chunk Management Engine 0.2.0+alpha.6.1
cullleaves: Cull Leaves 2.3.2
elativitymc_c2me-fabric_ver_1_18_libs_: libs 0.2.0+alpha.6.1
fabric: Fabric API 0.45.0+1.18
fabric-api-base: Fabric API Base 0.4.1+b4f4f6cd65
fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.5.0+17be577f65
fabric-biome-api-v1: Fabric Biome API (v1) 6.0.1+ded849a965
fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.9+3ac43d9565
fabric-command-api-v1: Fabric Command API (v1) 1.1.6+3ac43d9565
fabric-commands-v0: Fabric Commands (v0) 0.2.5+b4f4f6cd65
fabric-containers-v0: Fabric Containers (v0) 0.1.18+d154e2c665
fabric-content-registries-v0: Fabric Content Registries (v0) 0.4.5+6f53a73d65
fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.8+3ac43d9565
fabric-dimensions-v1: Fabric Dimensions API (v1) 2.1.7+43d2957165
fabric-entity-events-v1: Fabric Entity Events (v1) 1.4.5+6b21378a65
fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.16+bfa23f1765
fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.6+b4f4f6cd65
fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.10+3ac43d9565
fabric-item-api-v1: Fabric Item API (v1) 1.3.0+691a79b565
fabric-item-groups-v0: Fabric Item Groups (v0) 0.3.3+3ac43d9565
fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.8+c8aba2f365
fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.6+b4f4f6cd65
fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.4.10+c15ca33565
fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.8+3ac43d9565
fabric-mining-level-api-v1: Fabric Mining Level API (v1) 1.0.3+3ac43d9565
fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.7+b4f4f6cd65
fabric-models-v0: Fabric Models (v0) 0.3.3+3ac43d9565
fabric-networking-api-v1: Fabric Networking API (v1) 1.0.18+3ac43d9565
fabric-networking-v0: Fabric Networking (v0) 0.3.5+b4f4f6cd65
fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.11.0+3b82842e65
fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.8+3ac43d9565
fabric-particles-v1: Fabric Particles (v1) 0.2.9+526dc1ac65
fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.8.6+533be9ba65
fabric-renderer-api-v1: Fabric Renderer API (v1) 0.4.9+3ac43d9565
fabric-renderer-indigo: Fabric Renderer - Indigo 0.4.12+3ac43d9565
fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 3.2.7+b4f4f6cd65
fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.3.4+7242e9d765
fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 0.1.18+3ac43d9565
fabric-rendering-v0: Fabric Rendering (v0) 1.1.9+b4f4f6cd65
fabric-rendering-v1: Fabric Rendering (v1) 1.10.3+6b21378a65
fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.4.11+3ac43d9565
fabric-screen-api-v1: Fabric Screen API (v1) 1.0.7+3ac43d9565
fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.11+3ac43d9565
fabric-structure-api-v1: Fabric Structure API (v1) 2.0.8+295197a765
fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.2.5+3ac43d9565
fabric-textures-v0: Fabric Textures (v0) 1.0.9+3ac43d9565
fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.3.4+7de09f5565
fabric-transfer-api-v1: Fabric Transfer API (v1) 1.5.6+b4f4f6cd65
fabricloader: Fabric Loader 0.12.12
fart: Fart 1.0.0
java: OpenJDK 64-Bit Server VM 17
lambdynlights: LambDynamicLights 2.1.0+1.17
lazydfu: LazyDFU 0.1.2
lithium: Lithium 0.7.7
mcxr-core: [MCXR] Core 0.1.1
mcxr-play: [MCXR] Play 0.1.3
midnightlib: MidnightLib 0.2.9
minecraft: Minecraft 1.18.1
org_aperlambda_lambdajcommon: lambdajcommon 1.8.1
org_joml_joml: joml 1.10.2
org_lwjgl_lwjgl-egl: lwjgl-egl 3.2.3
org_lwjgl_lwjgl-opengles: lwjgl-opengles 3.2.3
pride: Pride Lib 1.1.0+1.17
sodium: Sodium 0.4.0-alpha6+build.14
spruceui: SpruceUI 3.3.0+1.17
starlight: Starlight 1.0.0+fabric.d0a3220
titleworlds: Title Worlds 0.0.1
XR: Session running
Runtime Name: Oculus
Runtime Version: 37.147.0
Headset Name: Oculus Quest2
Headset Vendor: 10291
Headset Orientation Tracking: true
Headset Position Tracking: true
Headset Max Width: 8192
Headset Max Height: 8192
Headset Max Layer Count: 32
Launched Version: 1.18.1
Backend library: LWJGL version 3.2.3 SNAPSHOT
Backend API: GL4ES wrapper GL version 2.1 gl4es wrapper 1.1.5, ptitSeb
Window size: 1980x1080
GL Caps: Using framebuffer using OpenGL 3.2
GL debug messages:
Using VBOs: Yes
Is Modded: Definitely; Client brand changed to 'fabric'; Server brand changed to 'fabric'
Type: Integrated Server (map_client.txt)
Graphics mode: fabulous
Resource Packs: vanilla, file/assets-v0.zip, Fabric Mods, cullleaves/smartleaves (incompatible)
Current Language: English (US)
CPU: 8x AArch64 Processor rev 0 (aarch64)
Server Running: true
Player Count: 1 / 8; [class_3222['Villagerjj'/1, l='ServerLevel[New World]', x=-30.72, y=90.87, z=32.16]]
Data Packs: vanilla, Fabric Mods
Additional information
I am using questcraft, but I don't think that is the issue. I feel like it might have something to do with titleworlds, I will remove this if that fixes it.
This isn't a Sodium bug. Your drivers are broken (likely not helped by the fact that you are using an OpenGL on OpenGL ES compatibility layer on a mobile device), and do not provide a compliant implementation of OpenGL 3.3.
Thanks for pointing out the errors! I will see what I can do on my own. I had a feeling it was just my hardware.
Sodium does support OpenGL 4.6, since OpenGL 4.6 supports all of the features that OpenGL 3.3 supports - OpenGL versions after 3.3 add additional versions that Sodium can optionally use.
The unfortunate state of affairs is just that Android device vendors often provide buggy OpenGL ES drivers for their devices. When you pair this with an imperfect OpenGL on OpenGL ES layer, that certainly doesn't improve things. Sodium is very sensitive to drivers, hence why it might crash here while vanilla works fine.
These sorts of issues with drivers are why people are moving to Vulkan, though of course Sodium can't just switch the game to use Vulkan (that's a massive amount of work), so we're sorta stuck dealing with OpenGL and OpenGL ES issues.
Perhaps in the future it will be possible for the various "Minecraft Java Edition on Android" solutions to have a better approach to OpenGL, but until then, Sodium really only works on desktop and laptop hardware.