Overview#
Animatica is a client-side mod that lets resource packs animate many of the game's textures using the MCPatcher / OptiFine custom-animation format - the same .properties-based system that detail packs have used for years - without needing OptiFine installed.
Vanilla only animates a small, fixed set of textures. Animatica extends that to almost any texture the game loads on its own - GUI screens, entity skins, block-entity textures, armor, paintings and more - by letting a resource pack describe a strip of frames and how to play them.
- Purely visual - it only changes how existing textures look; it adds no items, blocks or gameplay.
- Pack-driven - the animations live inside a resource pack, so different packs can animate completely different things.
- Drop-in compatible - because it reads the exact OptiFine animation format, the large existing library of OptiFine animation packs works with no changes.
The original mod is by FoundationGames (modrinth.com/mod/animatica, github.com/FoundationGames/Animatica), released under the LGPLv3 license.
Getting Started#
- Install Animatica, then add a resource pack that contains OptiFine-format animations (or make your own - see Creating an Animation).
- Enable the resource pack in Options -> Resource Packs as usual.
- Turn the animations on. Open Options -> Video Settings and make sure the Animatica toggle is enabled (it is on by default). Toggling it reloads your packs so you can compare the animated and static look instantly.
- That is it - any texture the pack targets now plays its animation in-game.
Animatica is client-side only. It does not need to be on a server, and it is safe to add to or remove from any setup at any time.
Which Textures Can Be Animated#
Animatica animates textures that the game loads individually through its texture manager, which includes:
- GUI / menu textures - inventory and container backgrounds, HUD elements, title and menu art.
- Entity textures - mob and creature skins.
- Block-entity textures - chests, signs, beds, banners, bells and similar.
- Armor textures - the layers drawn on the player and mobs.
- Paintings, particles and other stand-alone textures.
Note: ordinary block and item textures are stitched into large texture atlases and are animated by Minecraft's own built-in .mcmeta animation system, not by Animatica. Animatica targets the individually-loaded textures listed above - that is exactly where it adds animation that vanilla cannot.
Creating an Animation (the .properties format)#
An animation is defined by a small text file with a .properties extension placed inside the resource pack under assets/minecraft/optifine/anim/ (the legacy mcpatcher/anim/ folder is also read).
Each file describes one animation:
# assets/minecraft/optifine/anim/my_menu.properties
from=./frames.png # the source strip of frames (this folder)
to=minecraft:textures/gui/title/background/panorama_0.png # texture to animate
x=0 # left of the region to replace, in the target
y=0 # top of the region to replace
w=16 # width of the animated region
h=16 # height of one frame in the source strip
duration=2 # default ticks each frame is shown
interpolate=true # smoothly blend one frame into the next
Key fields:
| Field | Meaning |
|---|---|
from |
Source image holding all frames stacked vertically. ./name.png is relative to the .properties file; ~/ points at the pack's optifine root. |
to |
The target texture (namespace:path) that gets animated. |
x, y |
Top-left corner inside the target texture where the animation is drawn. |
w, h |
Width and height of one frame / the animated region. |
duration |
Default number of ticks each frame stays on screen (20 ticks = 1 second). |
interpolate |
If true, frames cross-fade smoothly instead of hard-cutting. |
Custom frame order and per-frame timing
By default frames play top-to-bottom and loop. You can override both the order and the timing:
tile.0=0
tile.1=1
tile.2=2
tile.3=1 # play frame 1 again -> ping-pong effect
duration.0=4 # first frame lingers longer
duration.2=1 # third frame is quick
tile.<n> sets which source frame is shown at animation step n; duration.<n> overrides that step's length. This lets a pack build ping-pong loops, holds and uneven rhythms from a single strip.
How Frames Work#
- The
fromimage is a single tall image made of frames stacked one above another, eachwwide andhtall. Frame 0 is at the top, frame 1 below it, and so on. - Each tick the mod advances the animation and draws the current frame onto the target texture at (
x,y). - With
interpolate=true, the mod blends between the current and next frame based on how far through the frame's duration it is, producing smooth motion instead of a slideshow. - The animation loops continuously. Using
tile.<n>you can make it revisit frames (for example 0, 1, 2, 1 for a back-and-forth pulse).
Because everything is driven by the source strip and the .properties timing, an animation can be as short as two frames (a simple blink) or a long, smoothly-interpolated sequence.
Configuration#
Animatica adds a single option to the Video Settings screen:
- Animatica: On / Off - master toggle for all custom animations. Turning it off restores the static textures; turning it on re-enables them. Changing it reloads your resource packs so the change is applied immediately.
There are no config files to edit and no commands to run - everything else is controlled by the resource packs you install.
Compatibility & Notes#
- OptiFine not required. Animatica reimplements the animation format independently, so you get animated textures without installing OptiFine.
- Existing OptiFine animation packs work as-is - no conversion needed, since the
.propertiesformat is identical. - Client-side only. It is never required on the server and has no effect on gameplay or world data.
- Lightweight and purely cosmetic. It only redraws textures that are already loaded, so the performance cost is minimal, and adding or removing it never risks your world.
Troubleshooting / FAQ#
My animation is not playing. Check that: the .properties file is under optifine/anim/ (or mcpatcher/anim/); the to path points at a real, individually-loaded texture (GUI, entity, block-entity, armor - not a block/item atlas sprite); the from strip exists and its path is correct; and the Animatica toggle is enabled in Video Settings.
Do I need OptiFine? No. Animatica provides the animation support on its own.
Can I animate normal block or item textures? Those are handled by Minecraft's built-in .mcmeta animation on the block/item atlas, not by Animatica. Animatica targets textures the game loads individually.
The animation looks choppy. Add interpolate=true to the .properties file so frames blend smoothly, and/or increase duration.
Does it affect performance? The impact is minimal - it only updates the animated textures each tick.
Is it safe to remove? Yes. It is purely visual and client-side, so removing it just returns the affected textures to static.