Devil May Cry 3 HD Collection · Evidence-first C++20 research
How to Inspect DMC3 Animations and MOT Research — DMC Rengine
Inspect DMC3 animation relationships through MOD hierarchy and the canonical MOT module. MOT is already registered in NativeReaderModuleRegistry, while PR #372 consolidates its parser/IR and bounded key-evaluation semantics. Complete animation-player and original-game parity remain separate proof gates.
Canonical MOT structural and reader path
- MOT is a canonical NativeReaderModuleRegistry member through native_reader_modules::mot(), while PR #372 consolidates structural decoding onto one modular parser/IR.
- The structural contract includes the MOT\0 marker, aligned header/channel-mask extent, nine-bit channel mask, record-count/popcount relationship, bounded track extents and typed compression-2 and compression-3 key payloads.
- Three hash-bound real MOT payloads parse through the modular path, with unknown-compression track bytes preserved rather than normalized into invented semantics.
Bounded key evaluation versus complete player parity
- Canonical-EXE-backed recovery covers nine-channel binding traversal, signed 16-bit track start-time offsets, quantization and compression-3 linear versus cubic/Hermite segment algebra with incoming/outgoing slope orientation.
- The interpolation helper is an algebraic semantic recovery, not a bit-identical SSE implementation and not proof of the game's complete segment-search, cache or whole-animation player behavior.
- Exact segment lookup and duplicate-time handling, flag 0x2 alternate binding, other compression modes, looping, blending, full transform composition, edited MOT authoring and original-game output comparison remain open.
Evidence boundary
A parser is not automatically a writer. A successful writer is not automatically equivalent to Capcom's offline tools. Synthetic validation does not establish original-game behavioral equivalence.
Use the current status for promoted capabilities and open proof gates.