Skip to content

OpenGL - Minecraft Flywheel indirect draw causes atio6axx.dll crash or missing geometry in Java applications #89

@EucatastropheMC

Description

@EucatastropheMC

I see this issue has been posted previously, but the driver is different, and I have more information available, so I am creating this issue instead of posting to the old one.

In Minecraft Java Edition, using the Flywheel rendering engine (used by the Create mod) reliably crashes the AMD OpenGL driver atio6axx.dll when placing blocks rendered by Flywheel. Switching to Flywheel's instancing backend prevents the crash but causes rendered geometry to become invisible, despite objects still existing logically (collision and simulation remain active).

System information:

  • OS: Windows 11, 64 bit Build 26100
  • CPU: AMD Ryzen 7 7800X3D 8-Core Processor
  • GPU: AMD Radeon™ RX 7900 XTX 24GB
  • GPU Drivers Version: Adrenalin 26.1.1

Java information:

  • JRE version: OpenJDK Runtime Environment Microsoft-11369865 (17.0.15+6) (build 17.0.15+6-LTS)
  • Java VM: OpenJDK 64-Bit Server VM Microsoft-11369865 (17.0.15+6-LTS, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
  • Runtime environment problematic frame: # C [atio6axx.dll+0x6d5278]

Generated error log: hs_err_pid30272.log

///// ///// /////

This issue is acknowledged in Create's repo and in Flywheel's repo.

The crash occurs on the render thread when LWJGL invokes glBindBuffersRange, which then crashes inside the AMD OpenGL driver (atio6axx.dll).

According to the JVM error log, the OpenGL call originates from Flywheel’s indirect rendering backend during instance buffer binding and culling, specifically from the following stack frames:

org.lwjgl.opengl.GL44C.glBindBuffersRange
dev.engine_room.flywheel.backend.engine.indirect.IndirectBuffers.multiBind
dev.engine_room.flywheel.backend.engine.indirect.IndirectBuffers.bindForCull
dev.engine_room.flywheel.backend.engine.indirect.IndirectCullingGroup.dispatchCull

Repro steps:

  • Install Java
  • Install Minecraft Java Edition
  • Open the launcher and launch version release 1.20.1
  • Close Minecraft
  • Install Minecraft Forge 47.4.10 for version 1.20.1 from the official Forge downloads page
  • Open the launcher and launch version Forge 47.4.10
  • Click ModsOpen mods folder (or similar)
  • Close Minecraft
  • Download Create 6.0.8 for mc1.20.1 from their official CurseForge page
  • Place the downloaded Create 6.0.8 for mc1.20.1 into the folder opened in step 7
  • Open the launcher and launch version Forge 47.4.10
  • Click SingleplayerCreate new world → Set game mode to Game mode CreativeWorld (at the top) → Set world type to superflatCreate world → Once it is finished loading, open the inventory (default key is E) → Click the compass in the top right to search, and search: cog → Left-click the item Cogwheel from the results and left-click an open slot in the hotbar → Exit the inventory and place the cogwheel on the grass by using right-click while holding the item in your hand → Game crashes and generates error log

Metadata

Metadata

Assignees

Labels

OpenGLThis is an issue with OpenGL driverfixed internallyThe issue has been fixed by AMD team internally

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions