Перейти к содержимому
Mineforgian

VMD Animation Cache

Per-frame cache for SlashBlade MMD animation

Загрузки
3K
Подписчики
1
Обновлён
30 мая 2026 г.
Лицензия
MIT

Опубликован 30 мая 2026 г.

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

ScenarioBeforeAfter
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

Installation

  1. Download the jar and drop it into your mods/ folder
  2. 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

Ченджлог

1.0.0Релиз1.20.1 · 30 мая 2026 г.

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

ScenarioBeforeAfter
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

Installation

  1. Download the jar and drop it into your mods/ folder
  2. 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

##

Комментарии

Загружаем…