ℹ️ Fork Information
This mod is a direct fork of erykczy's Colorful Lighting. The goal of this fork is to expand compatibility with mods, renderers, and shader packs, making colorful lighting practical for larger modpacks. If you find an incompatible mod, please report it on the GitHub Issues page.
❓ How It Works
Every light source gets a color, and that color spreads through the world just like vanilla light. Filters such as stained glass tint passing light, absorbers remove colored light, and propagation runs entirely on a background thread to keep gameplay smooth.
The mod is completely client-side, so you can enjoy colorful lighting on ANY server without requiring server installation.
✨ Features
- Different blocks emit different colors
- Light changes color when passing through filters
- Blocks can absorb colored light
- Colors are fully customizable through resource packs
- Block states and NBT can define different colors
- Unconfigured modded light sources automatically sample colors from their own textures
- Water subtly filters light using biome water colors
- 100% client-side
🎨 Resource Pack Addons
Ready-made addon packs that add colored lighting entries for popular mods:
- Colorful Lighting for Supplementaries
- Colorful Lighting for Connected Glass
- Colorful Lighting for Tinted Campfires
Want to make your own? The complete resource pack guide is available on the GitHub page.
🔗 Mod Compatibility
Supported & tested mods (click to expand)
- Embeddium: fully supported and recommended, but no longer required
- Vanilla rendering: fully supported
- Starlight and True Darkness: fully compatible
- Oculus: automatic shader patching for supported shader packs, with a generic patcher for everything else
- Dynamic light mods including Sodium Dynamic Lights, Torcy, Dynamic Lights, and especially Lively Lighting
- Wakes: Reforged
- Flywheel / Create
- Valkyrien Skies
- Epic Fight
- Flerovium
- AsyncParticles
- HBM's Nuclear Tech Modernized
Found an incompatible mod? Report it on GitHub Issues!
🗺️ Roadmap
Where the project is headed (click to expand)
- Full support for Sodium
- Fabric, Forge and NeoForge support across Minecraft 1.20.1 through 1.26.x
- More dedicated shader patches while keeping the generic auto-patcher as a fallback
No timelines are promised; follow the GitHub repository for progress.
⚠️ Known Issues
Known issues and planned fixes (click to expand)
- Distant Horizons: LOD lighting is not colored yet
- Cracker's Wither Storm Mod: currently incompatible
🔬 Want the Technical Breakdown?
The full documentation—including resource pack creation, emitters, filters, absorbers, entities, items, NBT rules, client configuration, shader patching, and implementation details—is available on the GitHub page.
All Versions
+ Add Version### Compatibility
- Fixed Flerovium compatibility. Held items, dropped items, and Item Frames now render correctly with colored lighting.
- Fixed AsyncParticles compatibility. Particles now render correctly with colored lighting.
- Fixed Flopper compatibility. Liquids inside the Flopper are now affected by colored lighting.
- Fixed HBM Modernized compatibility.
- Fixed Immersive Portals compatibility.
- Fixed Epic Fight compatibility. Custom mob models and animations now render correctly with colored lighting.
- Fixed Valkyrien Skies compatibility. Colored light sources on ships now work correctly.
- Added colored dynamic lighting on ships.
- Fixed Lively Lighting compatibility. Light colors now transfer correctly between worlds and ships.
- Fixed and improved Flywheel compatibility.
- Fixed a crash when riding boats with the Wakes mod installed.
- Added support for OpenGL 4.3 and lower. Flywheel compatibility no longer requires OpenGL 4.5+.
- Added automatic shader patching for BSL and Complementary shaders.
- Added
/cl offto load unpatched shader packs.
### Fixes & Improvements
- Fixed a rare crash with Starlight.
- Fixed a ConcurrentModificationException in the lighting engine.
- Fixed rendering without Embeddium installed. Night Vibrancy now also works without Embeddium.
- Fixed the light propagation thread not shutting down when leaving a world.
- Re-implemented the NBT system for block entity light colors.
- Reduced memory usage during chunk light baking.
- Improved light engine performance with faster chunk light loading and a new config-controlled algorithm.
- Tweaked light colors.
- Updated entity light definitions.
- Removed the internal global state for improved stability across worlds and dimensions.
- Split the bundled resource packs.
- Added detection for which levels support colored lighting.
- Started groundwork for baseline Sodium support.
### New Features
- Added a new **multiply** filter mode and the **
biome_water** filter color for biome-tinted water lighting. - Added automatic light colors sampled from block textures (can be disabled in the config).
- Added a new **
auto** color option inemitters.jsonfor blocks whose colors change dynamically (such as Better End aurora crystals).
- Shader packs are now AUTO PATCHED (can be toggled in client config). Most of the top shader packs have been tested and confirmed to be working!
- Now compatible with most dynamic lighting mods!
- Enjoy 😄

- Shader packs are now AUTO PATCHED (can be toggled in client config). Most of the top shader packs have been tested and confirmed to be working!

- Fixed some default entries
- fixed doors (FINALLY)
- fixed flywheel instancing backend
- fixed resource loading issue to improve load times
- Added new light absorbers (suck up light around them)
- Finally fixed lingering light issues
- Added basic Flywheel compat
- Fixed colorful lighting completely breaking when disabling compact vertex format
- Fixed door rendering (for the most part)
- Fixed colorful lighting in other dimensions (NETHER, END, etc.)
- View Frustum load priority (chunks you're looking at will load colorful lighting before chunks behind you)
- Smoother lighting on walls
- Fixed Flywheel dependency issue
- Fixed isSodiumLoaded method causing frame drops
- Changed the way Colorful Lighting handles its resources so loading order is never an issue
- Color vibrancy now depends on moon cycle (can be changed in resourcepack)
- True Darkness Compat (works with standalone mod and chloride)
- Wakes Reforged Compat (no longer crashes)
- Implemented block states for emitters.json (you can now specify different light values for specific block states)
- Implemented block states for filters.json (you can now change the filter depending on block states)
- Implemented light absorption for filters.json (you can specify how much light a block absorbs
- "vanilla" can now be used as a STRING in emitters.json and filters.json which uses the vanilla light color
- Light is now smoother
- Added a ton of new default entries to emitters.json and filters.json