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
Cull Particles's logo
Cull Particles
by Tfarcenim

Don't render particles that can't be seen. Unneeded with Sodium.

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
EntityCulling's logo
EntityCulling
by tr7zw

Using async path-tracing to hide (Block-)Entities that are not visible.

Versions
  • FabricFabric: 1.16 -> 1.20.2, 1.20.4 -> 1.21.1
  • QuiltQuilt: 1.16 -> 1.20.1
  • ForgeForge: 1.7.10 -> 1.8.9, 1.12.2, 1.16 -> 1.20.2, 1.20.4, 1.20.6 -> 1.21.1
  • NeoForgeNeoForge: 1.20.2, 1.20.4, 1.20.6 -> 1.21.1
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.20.2, 1.20.4 -> 1.21.3
  • QuiltQuilt: 1.16.5 -> 1.20.2, 1.20.4 -> 1.21.3
  • ForgeForge: 1.7.10 -> 1.20.2, 1.20.4, 1.20.6 -> 1.21.1
  • NeoForgeNeoForge: 1.20 -> 1.20.2, 1.20.4 -> 1.21.1
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
Lithium's logo
Lithium
by CaffeineMC

No-compromises game logic/server optimization mod.

Versions
Phosphor's logo
Phosphor
by CaffeineMC

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

Versions
Starlight's logo
Starlight
by PaperMC

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

Versions

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
Chime
by Emi

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

Versions
  • FabricFabric: 1.16, 1.16.4 -> 1.16.5, 1.18 -> 1.20.2, 1.20.4
  • QuiltQuilt: 1.18 -> 1.20.2, 1.20.4
CIT Resewn's logo
CIT Resewn
by shsupercm

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

Versions
  • FabricFabric: 1.17 -> 1.20.2, 1.20.4 -> 1.21.1
  • QuiltQuilt: 1.17 -> 1.19.3
Clear Skies's logo
Clear Skies
by grondag

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

Versions
Colormatic's logo
Colormatic
by kvverti

An independent implementation of the custom colors mod for Minecraft.

Versions
Connected Block Textures's logo
Connected Block Textures
by TwilightFlower

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

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)
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 GUI
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
  • FabricFabric: 1.16.5 -> 1.21.1
  • ForgeForge: 1.16.5 -> 1.20.4, 1.20.6 -> 1.21.1
  • QuiltQuilt: 1.16.5 -> 1.21.1
  • NeoForgeNeoForge: 1.18.2 -> 1.19.2, 1.19.4 -> 1.20.4, 1.20.6 -> 1.21.1
FabricSkyboxes's logo
FabricSkyboxes
by AMereBagatelle

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

Versions
  • FabricFabric: 1.16.3 -> 1.21.1
  • QuiltQuilt: 1.17 -> 1.19, 1.19.4 -> 1.21.1
JMX's logo
JMX
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
  • FabricFabric: 1.16 -> 1.19, 1.19.2 -> 1.20.1
  • QuiltQuilt: 1.16 -> 1.18, 1.18.2 -> 1.20.1
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
LambdaBetterGrass's logo
LambdaBetterGrass
by LambdAurora

Adds better grass and snow to the game.

Versions
Requirements
LambDynamicLights's logo
LambDynamicLights
by LambdAurora

Adds dynamic lighting to the game.

Versions
More Block Predicates's logo
More Block Predicates
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
  • FabricFabric: 1.16.5 -> 1.20.4, 1.20.6 -> 1.21
  • QuiltQuilt: 1.17 -> 1.20.4
  • ForgeForge: 1.16.5 -> 1.20.4, 1.20.6 -> 1.21
OptiGUI's logo
OptiGUI
by opekope2

Custom inventory GUIs on Fabric&Quilt 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.2 -> 1.20.4, 1.20.6 -> 1.21.1
  • QuiltQuilt: 1.18.2 -> 1.20.4
  • NeoForgeNeoForge: 1.19.2 -> 1.20.4, 1.20.6 -> 1.21.1
  • ForgeForge: 1.18.2 -> 1.20.4
Transparent's logo
Transparent
by Trikzon

Allows resource packs to make entities support transparency.

Versions
  • FabricFabric: 1.15 -> 1.20.4, 1.20.6
  • QuiltQuilt: 1.15 -> 1.20.4, 1.20.6
  • ForgeForge: 1.15 -> 1.20.4, 1.20.6
  • NeoForgeNeoForge: 1.20.2 -> 1.20.4, 1.20.6
Varied Mob Textures's logo
Varied Mob Textures
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
Quilt Loading Screen's logo
Quilt Loading Screen
by hibi, triphora (previous maintainer), darkerbit (original author)

A loading screen based off of The Quilt Community's server banner.

Versions
Splash's logo
Splash
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
  • FabricFabric: 1.17 -> 1.19, 1.19.2 -> 1.20.2
  • QuiltQuilt: 1.17 -> 1.18, 1.18.2 -> 1.20.2
Iris's logo
Iris
by IrisShaders

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

Versions

Fog

ClearView's logo
ClearView
by tfarecnim

Controls which kinds of fogs are shown.

Versions
Custom Fog's logo
Custom Fog
by Setadokalo

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

Versions
Fog Control's logo
Fog Control
by capnkork

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

Versions
  • FabricFabric: 1.17 -> 1.17.1, 1.20.4
NoFog's logo
NoFog
by Tommeh2, Virtuoel

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

Versions
  • FabricFabric: 1.16.5 -> 1.20.4, 1.20.6 -> 1.21
  • QuiltQuilt: 1.16.5 -> 1.20.4, 1.20.6 -> 1.21
  • ForgeForge: 1.10.2 -> 1.20.1
  • NeoForgeNeoForge: 1.20.1 -> 1.20.4, 1.20.6 -> 1.21

Utility

Fabrishot's logo
Fabrishot
by ramidzkh

Take insanely large screenshots because why not?

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 Control
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 Clouds
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
Quick Spyglasser's logo
Quick Spyglasser
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
  • FabricFabric: 1.18 -> 1.21.3
  • QuiltQuilt: 1.18.2 -> 1.20.1, 1.20.5

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

Sodium and Canvas Renderer are incompatible.

Some mods require the Fabric Renderer API to work, Canvas supports it, but Sodium will not support it by default, Indium is required to support it.

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