Links
Tags
Creators
Details
1.0.0
Compatibility
Required content
Changes
Overview
VMD Animation Cache eliminates redundant MMD motion computation in SlashBlade Resharped, giving you ~3.8x FPS improvement (50 → 190 FPS) when SlashBlade entities are on screen.
When SlashBlade renders MMD-based blade animations, VmdAnimation.setupAnim() is called 60–120 times per entity per frame — once for every bone, every time a transform is queried. But the tick and partialTick don't change within a frame. All 120 calls produce identical results, wasting ~20% of the render thread.
This mod adds a tiny per-frame cache: if setupAnim is called again with the same tick and partialTick, the entire MMD pipeline is skipped. 120 calls → 1 call per entity per frame.
Performance
| Scenario | Before | After |
|---|---|---|
| Third-person FPS (SlashBlade visible) | ~50 | ~190 |
Tested on Minecraft 1.20.1, Forge 47, SlashBlade Resharped 1.9.65. Single SlashBlade entity in view.
Requirements
- Minecraft 1.20.1
- Forge 47+
- SlashBlade Resharped 1.9.65
Installation
- Download the jar and drop it into your
mods/folder - Launch the game
Compatibility
Do not use with AntiEntropyCore — both mods inject into the same Mixin target (VmdAnimation) and will conflict.
How It Works
A single Mixin injects at the head of VmdAnimation.setupAnim(). It remembers the last (currentTick, partialTick) pair. Cache hit → method cancelled. Cache miss → update cache, run normally.
Only 32 lines of code. Client-side only. No coremod hacks.
Links
- Source: GitHub
- License: MIT
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:ilGMXraK:78tHFx0G"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ilGMXraK:78tHFx0G"
}

