promotional bannermobile promotional banner

Immersive Portal - CE

Seamless see-through portals and non-Euclidean worlds, enhanced for NeoForge 1.21.1 with performance optimizations and native Sable moving-sublevel compatibility.
Back to Files

Immersive Portals - CE 6.0.12 - NeoForge 1.21.1

File nameimmersive_portals-6.0.12.jar
Uploader
NsTutNsTut
Uploaded
Oct 9, 2026
Downloads
121
Size
4.6 MB
Mod Loaders
NeoForge
File ID
9106133
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:immersive-portals-ce-1672810:9106133"

Learn more about Curse Maven

What's new

Immersive Portals - CE 6.0.12

Minecraft 1.21.1 / NeoForge 21.1.228+ / Java 21

Renderer compatibility

  • Terrain-renderer and shader detection are independent. Supported combinations are vanilla without shaders, Sodium 0.8.12+mc1.21.1 with or without official Iris 1.8.14-beta.1+1.21.1-neoforge, and Embeddium 1.0.15+mc1.21.1 with or without NeOculus 1.8.7. Install only one terrain renderer; classic Oculus is not the pinned shader implementation.
  • Embeddium and NeOculus have separate dependency adapters and ABI checks. NeOculus's compatibility iris mod ID no longer selects Sodium-specific hooks. Unsupported combinations and unreviewed Embeddium/NeOculus versions report actionable errors.
  • Create 6.0.10-280 / Flywheel 1.0.6 uses vanilla block-entity rendering inside portal and clipped views, then restores the selected main-view backend. This is a scoped fallback, not accelerated Flywheel rendering inside portals. Sable remains optional.

Fixed

  • Synchronized NeOculus texture metadata with allocation and deletion, fixing stale depth dimensions after shader reload while retaining cached width/height lookups.
  • Serialized Forgified Fabric native receiver creation across protocol registrars, protected NeoForge payload maps against concurrent writes and duplicate replacement, and restored the original network setup flag even when registration fails.
  • Reported graphical-client disconnects immediately with the original reason and scoped thread diagnostics. Log polling reads only new bytes and retains incomplete lines, without rejecting successful shutdown.
  • Corrected clipping for terrain, translucent geometry, entities, block entities and particles, including final geometry-producing shader stages. Deferred shader providers refresh after reload; disabling shaders restores vanilla clipping. Shadow passes suspend inherited portal clipping and restore it afterward.
  • Preserved terrain lists and cached Sodium multi-draw batches across recursive views and shadow passes. Added the neighboring block/light-data ring required to build visible chunks, including nested destinations; reduced server performance retains a bounded nested loader instead of dropping the destination.
  • Preserved block changes arriving after Sodium submits an initial mesh snapshot but before its first upload after reload. A regression executes the pinned scheduler bytecode to reproduce the original lost update.
  • Initialized NeOculus's remembered dimension for early connection paths without creating a shader pipeline before OpenGL initialization.
  • Corrected depth/stencil copy formats, resize handling and GL state restoration. Drivers without copy-image capability use framebuffer blits.
  • Restored Flywheel state after recursive/clipped views and retained vanilla block-entity entries needed by those views without duplicate main-view drawing.
  • Made optional QIO GameTests discoverable without Sable and kept development-only drivers, mixins and shader fixtures out of the release jar.

Verification and limits

  • Verification includes dependency bytecode contracts, scheduler regressions, native GameTests, Sable UDP/TCP E2E, shader clipping and shadow fixtures, reload/resize/toggle scenes, negative controls, real-pack smoke checks, copy-image/blit paths and explicit Flywheel backends.
  • Real-pack inputs are pinned MakeUp Ultra Fast 9.4a (shadowless_high) and Complementary Reimagined r5.5.1 (POTATO) on Iris and NeOculus. These presets do not establish compatibility for every shaderpack or preset. The separate owned shadow fixture checks shadow behavior; it does not certify arbitrary packs' shadow implementations.
  • Normal rendering covers nested portals. Compatibility/debug renderers retain their one-layer limit.
  • Declared verification lanes are release gates, not a claim that a pending build has passed. Publication requires successful verification of the release commit.

See the renderer contract, Flywheel audit, and verification commands for exact scope and reproduction instructions.