GitHub - 4eb0da/war3-model: TypeScript-based mdl/mdx (Warcraft 3 model formats) converter/renderer
TypeScript-based parser/generator/viewer. May be used in browsers / node.js applications.
Demos:
Usage:
MDX/MDL features and limitations:
TypeScript-based parser/generator/viewer. May be used in browsers / node.js applications.
Demos:
Usage:
JavaScript:
import {parse as parseMDL} from '../../parsers/mdl';
import {generate as generateMDL} from '../../generators/mdl';
let model = parseMDL('...');
let mdl = generateMDL(model);
console.log(mdl);
MDX/MDL features and limitations:
- All standart features like Sequences, Bones, Cameras, etc
- Multiple texture chunks (mdx only)
- Multiple sequences/nodes with the same name (not quite sure is it feature or not, but War3 actually contains such models)
- SoundTrack not supported
- Standart geometry/animation
- Custom team color setting
- ReplaceableId 1/2
- Global sequences
- Alpha blending and multiple layers
- TextureAnimation
- Billboarded/BillboardedLockXYZ, w/o DontInherit/CameraAnchored
- RibbonEmitter (w/o Gravity and TextureSlot/Color animation)
- ParticleEmitter2 (with Tail/Head/Both/Squirt(?))
- Limited mobile devices support
- No light support (normals, light, Unshaded, etc)
- No render priority support (PriorityPlane and others)
- BLP1 only (not BLP0 and BLP2 support)
- Decoder only, no encoder
- Direct & jpeg data
- Variable alpha (8/4/1/0 bit, but tested only 8/0)
- API for getting all mipmap level's data
Last edited: