Oculus Community Port
No reviews yet
An unofficial Forge continuation of Oculus with secure shader-pack loading and experimental full-screen shader rendering.
Includes quality of life improvements and small tweaks to enhance and customize gameplay.
Forge is a popular mod loader for versions 1.1+ of Minecraft.
Community voices
Reviews
Click once to include, again to exclude, again to clear
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
Oculus Community Port
Unofficial client-side Forge port — experimental alpha
This project is not an official release of Oculus, Iris, Forge, Mojang, Microsoft, Sodium, Embeddium, or OptiFine.
Oculus Community Port is an independently maintained port of the Oculus/Iris shader-pack architecture for Minecraft Java Edition 26.2 and Minecraft Forge 65.1.0.
The project brings shader-pack discovery, secure pack loading, configuration, legacy shader adaptation, GPU compilation, and modern Forge frame-graph post-processing to Minecraft 26.2. Its purpose is to rebuild Oculus properly against the current rendering engine instead of hiding removed APIs behind compatibility stubs.
Client-side only
This mod is client-side only.
- Install it in the player's client
modsfolder. - Do not install it on a dedicated server.
- The server does not need Oculus Community Port.
- It does not add blocks, items, entities, recipes, dimensions, commands, or server gameplay mechanics.
- Its configuration, shader packs, rendering pipeline, and GPU resources remain entirely on the client.
Requirements
| Requirement | Version |
|---|---|
| Minecraft Java Edition | 26.2 |
| Minecraft Forge | 65.1.0 |
| Java | 25 |
| Graphics backend | OpenGL |
| Side | Client only |
No external Rubidium, Embeddium, or Sodium mod is required by this alpha.
Current features
Shader-pack management
- Discovers shader-pack directories and ZIP files
- Reads ZIP packs without extracting them
- Supports a single wrapper directory around a pack's
shadersfolder - Stores the selected pack and enabled state
- Provides a Forge Mod List configuration screen
- Reloads selected shader resources without requiring a complete game restart
- Reports pack preparation and shader compiler failures in
latest.log
Working shader pipeline
- Uses Forge's modern
AddFramePassEventframe-graph integration - Compiles shaders through Minecraft's active GPU device
- Executes compatible full-screen stages in deterministic order:
deferreddeferred1throughdeferred15compositecomposite1throughcomposite15final
- Supports a matching legacy
.vshfor each full-screen stage - Supplies a modern full-screen vertex shader when a
.vshis absent - Adapts common legacy GLSL constructs such as:
varyingtexture2Dtexture2DLodgl_FragColorgl_FragData[0]ftransform()gl_MultiTexCoord0
- Supports recognized main-color and main-depth sampler aliases
- Executes multiple compatible post-processing stages in sequence
Uniform support
The current compatibility layer can update common legacy values including:
- view width, view height, and aspect ratio
- frame time, frame counter, and frame-time counter
- world time and world day
- rain strength and wetness
- camera and previous-camera position
- eye altitude and eye medium
- near and far distance
- sun angle
- screen brightness
- fog color and sky color
Minecraft 26.2 rendering safety
- Detects the active graphics backend
- Allows shader-pack rendering only on the supported OpenGL path
- Automatically disables shader rendering on Vulkan
- Never attempts to run OpenGL-style shader-pack code unchanged on Vulkan
- Converts recognized post-processing depth samples from Minecraft 26.2's reversed-depth representation to the forward-depth values expected by legacy packs
- Closes mod-owned mapped GPU buffers during replacement and shutdown
- Restores vanilla rendering after source adaptation, compilation, or runtime shader failure
Shader-pack input security
Shader packs are treated as untrusted local input. The loader includes protections against:
- ZIP path traversal and absolute paths
- directory symlink escape
- malformed ZIP files
- duplicate ZIP entries
- oversized files and archives
- excessive compression ratios
- invalid UTF-8 shader source
- recursive includes and include cycles
- excessive include depth or count
- excessive expanded shader source
Performance design
The alpha is designed to avoid unnecessary work in hot rendering paths:
- Pack discovery, file reads, and source preparation do not run every frame.
- Shader programs are not recompiled every frame.
- Stable render-target descriptors are cached by size.
- Common uniforms use mapped ring buffers.
- GPU object creation and use remain on the render thread.
- Shader source and archive reads are kept away from per-frame rendering.
- With shaders disabled, no shader-pack programs are compiled or executed and Forge/vanilla world rendering remains active.
Compatibility with future Forge 26.2 optimization mods will be handled through verified public APIs where possible. This build does not pretend that an unavailable Rubidium or Embeddium 26.2 release exists, and it does not bundle Sodium implementation classes.
Important alpha limitations
This is the first functional rendering alpha, not yet a complete production replacement for Oculus or Iris.
The following major features are not implemented yet:
- terrain and chunk gbuffer shader routing
- entity and block-entity gbuffer routing
- particles, first-person hand, held-item, and overlay shader routing
- pack-controlled sky, sun, moon, stars, clouds, weather, water, and translucent geometry stages
- shadow-map world rendering
- additional
colortexanddepthtexattachments - normal and specular texture support
- custom pack textures and noise textures
- previous-frame/history render targets
- the complete OptiFine/Iris properties, profiles, directives, expressions, and preprocessor model
- Vulkan shader-pack rendering
As a result, complex shader packs may fail to activate or may not produce their intended appearance. Unsupported samplers, uniforms, outputs, and shader features produce a diagnostic instead of silently receiving fake default data. Vanilla rendering is restored whenever recovery is possible.
Do not advertise this alpha as supporting every OptiFine shader pack.
Shader-pack compatibility goal
The long-term goal is compatibility with existing ShadersMod and OptiFine-style shader packs without requiring pack authors to rewrite them. Compatibility is being implemented subsystem by subsystem against Minecraft 26.2's modern rendering APIs.
Currently, lightweight packs and compatible full-screen
deferred/composite/final programs are the supported test surface.
Installation
- Install Minecraft 26.2.
- Install Minecraft Forge 65.1.0.
- Configure the launcher to use Java 25.
- Place
oculus-forge-26.2-0.2.0-alpha.1.jarin the client'smodsfolder. - Do not place the
-sources.jarfile inmods. - Start Minecraft once.
- Place shader-pack ZIPs or directories in the instance's
shaderpacksdirectory. - Open Mods → Oculus Community Port → Config.
- Select a pack, enable shaders, and save.
Compatibility notes
- OptiFine: incompatible. Remove OptiFine before using this mod.
- OpenGL: supported shader backend.
- Vulkan: shaders are automatically disabled; Vulkan shader rendering is not implemented.
- Dedicated servers: do not install the mod server-side.
- Other Forge mods: best-effort compatibility; report reproducible conflicts to this port's issue tracker.
- Resource packs: expected to coexist, but the complete resource-pack test matrix is unfinished.
- Optimization mods: no Forge 26.2 renderer integration has been formally verified.
Reporting problems
Report problems to , not to the original Oculus or Iris maintainers.
Please include:
logs/latest.log- Minecraft, Forge, Java, and mod versions
- GPU model and driver
- active graphics backend
- shader-pack name and version
- installed mod list
- exact reproduction steps
Source code, license, and attribution
Oculus Community Port is distributed under
GNU LGPL version 3 only (LGPL-3.0-only).
- Community port source: https://github.com/Khaliiid0/Oculus-Community-Port
- Original Oculus repository: https://github.com/Asek3/Oculus
- Iris repository: https://github.com/IrisShaders/Iris
The project preserves the required license, copyright, attribution, and notice files. Corresponding source for every published binary must remain available from the community port's public source repository.
This is a substantially modified, unofficial community fork. It is not affiliated with or endorsed by the original Oculus or Iris contributors, Minecraft Forge, Mojang, Microsoft, Sodium, Embeddium, OptiFine, or any shader-pack developer.
The project icon is an original AI-assisted branding asset created specifically for this community port. It does not reproduce the original Oculus, Iris, Minecraft, Meta, Forge, or Modrinth logo and does not depict in-game content.
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Want to reach Minecraft players?
We're looking for a server hosting partner to feature here and other parts of the site. Interested? Send us a message!
Get in touchGet it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources