OptiFine Alternatives

Why?

OptiFine was originally a great mod offering many quality of life improvements for the player in the beginning. However, over the years, its benefits have dwindled and has caused many issues for modders. This is due to Minecraft's codebase improving over the years and OptiFine's aggressiveness towards replacing entire swaths of code while being closed source making it very difficult to figure out why OptiFine has broken another modder's mod. Also, worth noting that OptiFine natively doesn't support Fabric, and it's hard to maintain OptiFabric.

In the modern Minecraft era, with Fabric's community effort, modders have begun to create alternatives for most of OptiFine's features to allow players to maintain better performance, better mod compatibility, and better support.

OptiFabric: A note about the 1.16 crashes

This list

This list will list recommended OptiFine alternatives by me (LambdAurora), so it has some requirements for mods to be listed here:

This list now has a fancy URL: https://optifine.alternatives.lambdaurora.dev/

Contribute

You can contribute to this list by opening a pull request on the data branch via GitHub.

Alternatives

Performance

Client

Cull Leaves's logo
Cull Leaves
by TeamMidnightDust

Adds culling to leaf blocks, providing a huge performance boost over vanilla. Similar to OptiFine's Smart Leaves feature.

Versions
Dynamic FPS's logo
Dynamic FPS
by juliand665, LostLuma

Reduce resource usage while Minecraft is in the background or idle.

Versions
Enhanced Block Entities's logo
Enhanced Block Entities
by FoundationGames

Reduce FPS lag with block entities, as well as customize them with resource packs.

Versions
Requirements
FPS Reducer's logo
FPS Reducer
by bre2el

Improve performance when Minecraft is in the background, minimized or left inactive/idle for a while.

Versions
  • FabricFabric: 1.16.5 -> 1.21.10
  • ForgeForge: 1.7.10, 1.8.9, 1.9.4 -> 1.13, 1.14.4 -> 1.15, 1.16.5 -> 1.21.10
  • NeoForgeNeoForge: 1.20 -> 1.21.10
Sodium's logo
Sodium
by CaffeineMC

Modern rendering engine and client-side optimization mod for Minecraft.

Versions

General

Krypton's logo
Krypton
by astei

A mod to optimize the Minecraft networking stack.

Versions
LazyDFU's logo
LazyDFU
by astei

Makes the initialization of DataFixerUpper "lazy". DataFixerUpper (or DFU for short) is the system used by Minecraft to convert old worlds to the current version you're running, in Vanilla it's initialized at startup and is slow (and eats a lot of resources). This mod delays the initialization of DFU by initializing only when needed, if you're playing only on multiplayer it'll never get initialized for example.

Versions
  • FabricFabric: 1.14 -> 1.20.6
  • ForgeForge: 1.16, 1.17 -> 1.18, 1.19.3
Lithium's logo
Lithium
by CaffeineMC

No-compromises game logic/server optimization mod.

Versions
Phosphor's logo
PhosphorModern versions don't need light engine performance mods.
by CaffeineMC

No-compromises lighting engine optimization mod. Incompatible with Starlight.

Versions
  • FabricFabric: 1.15 -> 1.16, 1.17 -> 1.18, 1.19.4
Starlight's logo
StarlightModern versions don't need light engine performance mods.
by PaperMC

Rewrites the light engine to fix lighting performance and lighting errors. Uses a custom format for light storage. Incompatible with Phosphor.

Versions
  • FabricFabric: 1.17 -> 1.20.4
  • ForgeForge: 1.17 -> 1.19.3, 1.20 -> 1.20.4

Cosmetic

Animatica's logo
Animatica
by FoundationGames

A mod implementing the OptiFine/MCPatcher animated texture format.

Versions
Block Entity Extended Rendering's logo
Block Entity Extended Rendering
by jimbot6000

Adds a slider to change the render distance for block entities.

Versions
Chime's logo
ChimeMostly available in Vanilla since 1.21.4
by Emi

Adds predicates for more interactive item models, CIT replacement with a custom format.

Versions
  • FabricFabric: 1.16 -> 1.16.5, 1.18 -> 1.19.3, 1.20 -> 1.20.4
CIT Resewn's logo
CIT ResewnMostly available in Vanilla since 1.21.4
by shsupercm

Re-implements MCPatcher's CIT (custom item textures from optifine resource packs)

Versions
Clear Skies's logo
Clear SkiesUnmaintained
by grondag

Horizon and fog match the sky color. True blue skies!

Versions
  • FabricFabric: 1.15 -> 1.16, 1.17 -> 1.18, 1.19.3
  • ForgeForge: 1.16, 1.17 -> 1.18, 1.19.3
Colormatic's logo
ColormaticUnmaintained
by kvverti

An independent implementation of the custom colors mod for Minecraft.

Versions
  • FabricFabric: 1.14, 1.15 -> 1.16, 1.17 -> 1.19
Connected Block Textures's logo
Connected Block TexturesUnmaintained
by TwilightFlower

An implementation of the MCPatcher/Optifine connected textures format on the Fabric modloader.

Versions
Requirements
Continuity's logo
Continuity
by PepperCode1

A Fabric mod that allows for efficient connected textures. Support emissive textures.

Versions
Requirements
Custom Entity Models (CEM)'s logo
Custom Entity Models (CEM)Unmaintained
by dorianpb

An implementation of custom entity models heavily based off of Optifine's format that aims to achieve feature parity with Optifine's custom entity models.

Versions
Custom GUI's logo
Custom GUIUnmaintained
by omoflop

A mod allowing to animate GUI textures or replace container textures with minimal predicates.

Versions
Entity Model Features's logo
Entity Model Features
by Traben

A Fabric mod implementing support for OptiFine-format custom entity model (CEM) resourcepacks. Fully compatible with Sodium & Fresh Animations.

Versions
Entity Texture Features's logo
Entity Texture Features
by Traben

A Fabric mod implementing randomized & emissive texture support for mobs set by the resourcepack. Fully compatible with the Optifine format & Sodium.

Versions
JMX's logo
JMXUnmaintained
by vram-guild

JMX adds support for FREX Rendering API features to Minecraft JSON model loading. It can also be configured to load all JSON models as FREX meshes, which may offer a modest reduction in memory usage due to more efficient data structures.

Versions
JsonEM (Json Entity Models)'s logo
JsonEM (Json Entity Models)
by FoundationGames

Data driven entity model library, should work with most entities. Does not support OptiFine's format.

Versions
  • FabricFabric: 1.18 -> 1.21.4, 1.21.8
LambdaBetterGrass's logo
LambdaBetterGrass
by LambdAurora

Adds better grass and snow to the game.

Versions
  • FabricFabric: 1.16.3 -> 1.19, 1.20 -> 1.21.10
  • QuiltQuilt: 1.18 -> 1.21.10
Requirements
LambDynamicLights's logo
LambDynamicLights
by LambdAurora

The most feature-complete dynamic lighting mod for Fabric.

Versions
More Block Predicates's logo
More Block PredicatesUnmaintained
by omoflop

Allows resource packs to change block models depending on new conditions! Custom format.

Versions
MoreMcmeta's logo
MoreMcmeta
by soir20

Animate almost any Minecraft texture with more options.

Versions
Nuit's logo
Nuit
by FlashyReese

Allows resource packs to define custom skyboxes. OptiFine format is not compatible by default, converters are available. Formerly known as FabricSkyboxes.

Versions
OptiGUI's logo
OptiGUI
by opekope2

Custom inventory GUIs on Fabric with OptiFine resource pack support & many more features.

Versions
Polytone's logo
Polytone
by MehVahdJukaar

Multipurpose Visual Customization mod: tweak colors, colormaps, lightmaps, sounds, GUI elements, biome effects, particles, fog colors and more. Supports old OptiFine formats.

Versions
  • FabricFabric: 1.18 -> 1.19, 1.20 -> 1.21.8
  • ForgeForge: 1.18 -> 1.19, 1.20 -> 1.20.4
  • NeoForgeNeoForge: 1.19, 1.20 -> 1.21.5
Transparent's logo
Transparent
by Trikzon

Allows resource packs to make entities support transparency.

Versions
Varied Mob Textures's logo
Varied Mob TexturesUnmaintained
by digifox03

This mod allows the resource packs creator to have multiple randomized textures for the same mob. Uses custom format, OptiFine-based resource packs will need conversion.

Versions

Splash Screen

Custom Splash Screen's logo
Custom Splash Screen
by TeamMidnightDust

Change Minecraft's loading screen to your liking! Completely configurable!

Versions
Dark Loading Screen's logo
Dark Loading Screen
by A5b84

A simple mod to make the loading screen darker.

Versions
Splash's logo
SplashUnmaintained
by LoganDark

Splash is a Fabric mod that allows you to customize the colors of your splash screen.

Versions

Shaders

Canvas Renderer's logo
Canvas Renderer
by vram-guild

A new rendering engine. Incompatible with Sodium.

Versions
Iris's logo
Iris
by IrisShaders

A new shaders mod for Minecraft intended to be compatible with existing ShadersMod/Optifine shaders.

Versions

Fog

Custom Fog's logo
Custom Fog
by Setadokalo

A mod allowing you to customize the appearance of fog in your world.

Versions
  • FabricFabric: 1.15 -> 1.19, 1.20.4 -> 1.21
Fog Control's logo
Fog ControlUnmaintained
by capnkork

Allows the user to adjust the (client) distance at which fogs render or disable them completely.

Versions
NoFog's logo
NoFog
by Tommeh2, Virtuoel

A simple client-side mod supporting both forge and fabric that removes all fog. (ARR)

Versions

Utility

Fabrishot's logo
Fabrishot
by ramidzkh

Take insanely large screenshots, useful for content creation.

Versions
No Telemetry's logo
No Telemetry
by kb1000

No Telemetry is a mod that allows you to disable Microsofts data tracking which has been added in the snapshot 21w38a.

Versions
Resolution Control's logo
Resolution ControlUnmaintained
by juliand665

Allows you to set render resolutions and take large screenshots.

Versions
ResolutionControl+'s logo
ResolutionControl+
by UltimateBoomer

Allows you to set render resolutions and take large screenshots.

Versions
  • FabricFabric: 1.16.5, 1.19.4 -> 1.20.4

Cloud Height

Raised Clouds's logo
Raised Clouds
by haykam

Allows changing the height at which clouds appear.

Versions
Soaring Clouds's logo
Soaring CloudsUnmaintained
by Draylar

Allows changing the height at which clouds appear.

Versions

Zoom

Camera Utils's logo
Camera Utils
by henkelmax

Additional features concerning the player's camera.

Versions
Logical Zoom's logo
Logical Zoom
by LogicalGeekBoy

Super simple zoom key for Minecraft.

Versions
  • FabricFabric: 1.15 -> 1.16, 1.17 -> 1.21.10
Quick Spyglasser's logo
Quick SpyglasserUnmaintained
by Gluton

Adds a client-side keybind for using a spyglass anywhere in your inventory.

Versions
Zoomify's logo
Zoomify
by isXander

A rather simple zoom mod with moderate customizability.

Versions

Extras

The mods listed below are not part of the OptiFine alternatives directly but those are still nice to have.

No Dynamic FOV

As of 1.16.2 and above, this is now a vanilla feature under the accessibility settings. If you are playing in 1.16.2 or above, the mods for this feature are irrelevant.

These are client-only mods that prevent Minecraft from changing the FOV in all situations.

Compatibility

Only one mod at a time can replace the rendering engine, as such feature requires a full control of the engine to avoid graphical corruption and crashes. This means rendering mods like Sodium, VulkanMod, and Canvas Renderer are incompatible.

When a mod replaces the rendering engine it will also need to provide support for Fabric Renderer API, so that mods which interact with custom models can properly render them.

Canvas provides a Fabric Renderer implementation, Sodium only provides one since its 0.6 release, before then Indium was required to add support. As a rule of thumb, Sodium 0.6 exists since 1.21, Sodium 0.5 and below target 1.20.6 and below and will require Indium on those versions.

Missing

Need help?

If you need help about Sodium, Lithium, Phosphor (any of CaffeineMC's mod to be short), please check out CaffeineMC's discord server.

If you need help related to LambDynamicLights, LambdaBetterGrass, or Inspecio, if you don't want to post in the comments a suggestion you can check out my own discord server

Other lists