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
How to Install VMD Animation Cache (Mod)
VMD Animation Cache by Elten-huanghuang is verified for Forge across Minecraft versions 1.20.1 (latest release: 1.0.0, file size: 4 KB). Follow the steps below to install it safely from ModCraft.tv:
- Click the Download button above and select your Minecraft version (1.20.1) and platform (Forge).
- Make sure you have the compatible loader or environment installed for Forge.
- Move the downloaded VMD Animation Cache file into your Minecraft
.minecraft/modsfolder and launch the game.
<p><strong>VMD Animation Cache</strong> eliminates redundant MMD motion computation in SlashBlade Resharped, giving you <strong>~3.8x FPS improvement</strong> (50 → 190 FPS) when SlashBlade entities are on screen.</p>
<p>When SlashBlade renders MMD-based blade animations, <code>VmdAnimation.setupAnim()</code> is called <strong>60–120 times per entity per frame</strong> — 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.</p>
<p>This mod adds a tiny per-frame cache: if <code>setupAnim</code> is called again with the same tick and partialTick, the entire MMD pipeline is skipped. <strong>120 calls → 1 call</strong> per entity per frame.</p>
<h2>Performance</h2>
<table>
<tr><th>Scenario</th><th>Before</th><th>After</th></tr>
<tr><td>Third-person FPS (SlashBlade visible)</td><td>~50</td><td>~190</td></tr>
</table>
<p><em>Tested on Minecraft 1.20.1, Forge 47, SlashBlade Resharped 1.9.65. Single SlashBlade entity in view.</em></p>
<h2>Requirements</h2>
<ul>
<li>Minecraft <strong>1.20.1</strong></li>
<li>Forge <strong>47+</strong></li>
<li><a href="https://www.curseforge.com/minecraft/mc-mods/slashblade-resharped">SlashBlade Resharped</a> <strong>1.9.65</strong></li>
</ul>
<h2>Installation</h2>
<ol>
<li>Download the jar and drop it into your <code>mods/</code> folder</li>
<li>Launch the game</li>
</ol>
<h2>Compatibility</h2>
<p><strong>Do not use with AntiEntropyCore</strong> — both mods inject into the same Mixin target (<code>VmdAnimation</code>) and will conflict.</p>
<h2>How It Works</h2>
<p>A single Mixin injects at the head of <code>VmdAnimation.setupAnim()</code>. It remembers the last <code>(currentTick, partialTick)</code> pair. Cache hit → method cancelled. Cache miss → update cache, run normally.</p>
<p>Only 32 lines of code. Client-side only. No coremod hacks.</p>
<h2>Links</h2>
<ul>
<li>Source: <a href="https://github.com/Elten-huanghuang/vmd-animation-cache">GitHub</a></li>
<li>License: MIT</li>
</ul>
##