Contour Shaders
Contour Shaders brings the clean, vibrant outlines from official Minecraft trailers into the game.
What is Contour Shaders?
Contour Shaders introduces dynamic, color-coded entity outlines to every mob, player, and dropped item in your world.
The outline color matches the mob instead of using a plain black border. For example, Creepers get a green outline and Cows get a brown one, similar to the style used in official Minecraft artwork.
Key Features
- Clear Outlines: Mobs are easier to see without changing the original game style.
-
Crisp Scaling: Outlines stay clear and keep the right size at any render distance.
-
Trailer Aesthetic: Matches the style of official Minecraft Trailer.
-
Customizable: Tweak thickness, darkness, and distance falloff directly from the in-game shader options.
-
Rainbow Outline Mode: Cycles the outline through rainbow colors, with support for animated or fixed hues.
-
Complementary Base: Built on top of Complementary Shaders to retain standard lighting and water effects.
Requirements
- Minecraft Java Edition
- Iris Shaders (v1.6 or higher)
- A graphics card supporting OpenGL 3.3 or higher
⚙️ Settings You Can Tweak
| Setting | What it does |
|---|---|
| Outline Thickness | How thick the outline appears |
| Outline Darkness | How dark the outline color is |
| Base Distance | Distance where thickness starts shrinking |
| Outline on Hand | Toggle outline on your held item |
| Rainbow Mode | Enable rainbow coloring on the outline |
| Rainbow Animated | Toggle animated or fixed hue |
| Rainbow Fixed Color | Pick a specific hue when animation is off |
| Rainbow Speed | How fast the rainbow cycles |
Quick Installation
- Ensure Iris Shaders is installed.
- Navigate to: Options ➔ Video Settings ➔ Shader Packs ➔ Open Shader Pack Folder
- Drop the downloaded .zip file into the folder.
- Select Contour Shaders in-game and click Apply.
Community & Support
For unreleased early access versions, bug reports, or community support, join the Discord server:
👥 Credits
- Shader Base: Complementary Reimagined by Emin (EminGT) and the Complementary Development team. Visit them at Complementary Dev.
- Outline Development: The custom adaptive outline system was developed by Eleeter and Edren.
-
Concept & Media: Shader concept, showcase, and logo created by Flanzo.
📄 Licensing & Permissions
- Complementary Base: Distributed as a Modified Pack under the Complementary License Agreement 1.7.
- Contour Outline System: The outline algorithms and code are proprietary to Eleeter. Any modification or redistribution of the outline code requires prior written consent.
All Versions
+ Add VersionFixed
- Fixed round "ball" artifacts showing up on the edge of the player's head
What was happening
- A thin 1 pixel line from the player model sometimes showed up a few
around it, so it looked like a ball stuck to the head.
Fixed
- Fixed round "ball" artifacts appearing on the edge of the hand outline,
- Fixed the same ball artifacts showing up when a mob was behind your hand.
- Fixed outline checks reading past the edge of the screen.
What was happening
- On MC 26.2 and 26.3, a single stray pixel sometimes showed up just outside
looked like a ball stuck to the outline.
Finally! got around to fixing and upgrading the entire outline system. took a while but its in a much better spot now.
## Fixes
- Hand Outline Disappearing Behind Mobs**
## Changes
- Kernel now uses gaussian weights**
- Depth bias is no longer hardcoded**
- Entity separation threshold scales with FOV**
- Outline thickness is now FOV-accurate**
- Mask now stores alpha instead of hard 1.0**
### Added
- Rainbow Outline Mode** (
OUTLINE_RAINBOW) — optional extra color mode that makes the outline cycle through rainbow colors OUTLINE_RAINBOW_CYCLE— toggle animated vs fixed rainbow colorOUTLINE_RAINBOW_HUE— fixed hue used when animation is off (0.00Red →0.17Yellow →0.33Green →0.50Cyan →0.67Blue →0.83Magenta)OUTLINE_RAINBOW_SPEED— animation cycle speed whenOUTLINE_RAINBOW_CYCLEis onen_US.langentries for all new Contour Outline options and screen
### Fixed
- Fixed 2-column UI layout gap in
CONTOUR_OUTLINE_SETTINGSscreen —OUTLINE_DARKNESSandOUTLINE_RAINBOWnow share a row correctly instead ofOUTLINE_RAINBOWbeing orphaned to its own row due to a double<empty>token pair between them
- Contour Shaders v1.0.1**
A bug-fix release on top of v1.0.
- What's fixed**
Outlines on overlapping entities now render correctly. Previously, when two mobs overlapped on screen — or when your hand overlapped a mob — the outline would disappear at the intersection. This happened because the edge-detection pass skipped any pixel that belonged to an entity, so mob-on-mob overlap zones were silently ignored.
The outline pass now runs on every pixel. Background pixels use a lenient depth threshold to handle coplanar surfaces like feet on the ground. Entity pixels use a view-space depth comparison converted to real in-game metres, requiring a neighbour to be at least 0.4 blocks closer before drawing — this distinguishes a separate mob in front from natural surface curvature on the same mob, preventing interior self-outlining while keeping all overlap cases correct.
- Known issue (carried forward, not introduced in this release)**
Outlines may disappear when you are very close to a mob. This is a remaining depth precision limitation and will be addressed in a future update!
- Compatibility:** Iris 1.7+ · Minecraft 1.21+