Skip to content

Home

GitHub Release Modrinth Download CurseForge Download GitHub Repo stars GitHub top language Buy me a coffee

Welcome to the OptiGUI documentation. OptiGUI enables the customization of any inventory GUIs on Fabric&Quilt, and has built-in support for OptiFine resource packs.

OptiFine resource packs

OptiGUI supports OptiFine resource packs. When loading OptiFine resources, OptiGUI internally converts them to the equivalent OptiGUI resource, then proceeds to load them.

If you want to reach a broader user base with your resource pack, and OptiFine provides all the necessary features, then create an OptiFine resource pack. However, if some features are not possible with OptiFine, scroll down for alternatives.

OptiGUI resource packs

OptiFine's custom GUI support is lagging behind by quite a few years, as seen in some issues. OptiGUI resource packs, in contrast, support more features.

I also found it confusing using container=chest, as there is no way to specify whether to replace the texture of a single chest, and adding _barrel to it was a mistake, because OptiFine ignores _barrel as mentioned in #30.

I introduced OptiGUI-specific configuration files in OptiGUI 2.1.0-beta.1, which enables the use of more precise selectors to choose when to replace the texture. These can be found here. More selectors are planned to be added in later versions, you can check out GitHub issues to see some of them.

Hybrid resource packs

OptiGUI and OptiFine resources reside in different folders, and have different file extensions, so it is possible to create "hybrid resource packs".

If you want to use OptiGUI features, and also want to support OptiFine, then I recommend creating OptiFine-specific assets whenever possible, and if it's not possible, use OptiGUI features. These latter resources will only be available for OptiGUI users, while OptiFine users can enjoy a subset of your resource pack.

Referencing OptiFine textures from OptiGUI INI files

OptiFine assets are located in the /assets/minecraft/optifine/gui/container/ folder (or its children).

Example

If you have a texture at /assets/minecraft/optifine/gui/container/shulker_boxes/purple.png, you can reference it from any OptiGUI INI file using:

replacement = minecraft:optifine/gui/container/shulker_boxes/purple.png

Referencing OptiGUI assets from OptiFine properties

OptiGUI assets are located in the /assets/optigui/gui/ folder (or its children).

Example

If you have a texture at /assets/optigui/gui/shulker_boxes/purple.png, you can reference it from any OptiFine properties file using:

texture=optigui:gui/shulker_boxes/purple.png

Replacing inventory menu textures (typically found on servers)

WIP. Some tips can be found in #50.

Animations

Animations may be possible in the future with selectors, like frame.numerator and frame.denominator (non-existent at the moment), which is different from OptiFine custom animations.

OptiGUI supports Animatica (Modrinth, CurseForge) out of box.