irisscalefix-2.0.1
Curse Maven Snippet
What's new
Minecraft 26.1 – 26.2 support. One file covers 26.1, 26.1.1, 26.1.2 and 26.2 on NeoForge.
The two depth-buffer defects this mod exists for are still present in Iris 1.11.2 and 1.11.3 — read out of their compiled code, unchanged from Iris 1.8.14 three minor versions ago:
RenderTargets.resizeIfNeededtakes a new depth texture only when a version counter moves, and never compares the texture it is being handed.DHCompatInternal.reconnectDHTexturesis guarded by a texture id that does not change when only the attachment was replaced — so the Distant Horizons framebuffers, which Iris's own resize walk stomps, never get their depth back.
Both fixes are ported. A third fix from the 1.21.1 builds is deliberately not here: it detached a
stale depth/stencil attachment that Iris left behind when it alternated between two attachment
points based on a format cache keyed by texture id. On 26.x that method has no branch and no cache —
it always attaches to GL_DEPTH_ATTACHMENT, and the format travels on the GpuTexture. The defect
is gone upstream, so shipping the fix would cost work on every attachment in exchange for nothing.
New: each fix now reports two counters in the log — whether its hook ran at all, and whether it
actually had to act. A hook that never runs is a different problem from a fix that was never needed,
and the log now tells them apart. Each fix also has its own switch in
config/irisscalefix.properties, re-read while the game is running.
Tested in game on Minecraft 26.2 / NeoForge 26.2.0.75 with Iris 1.11.2, Distant Horizons 3.2.0-b, RenderScale 1.4.0-alpha.4 and BSL 10.1.3. On 26.1.x every injection point and the render-target accessor are verified against that version's own Iris build and client jar, but it has not been played there.
Minecraft 1.21.1 users: stay on 1.3.1. The two are not interchangeable.
All Relations
- All Relations
- Embedded Library
- Optional Dependency
- Required Dependency
- Tool
- Incompatible
- Include
This mod has no related projects
