mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2026-06-03 07:12:33 +00:00
feat: IW3 xanim dumping/loading in CoD4 Mod Tools raw binary format (#768)
* feat: IW3 dump xanim to cod4 mod tools compatible binary * chore: add XAnimPartType enum to game headers * chore: use XAnimPartType in XAnimDumperIW3 * chore: extract xanim filename into XAnimCommon * chore: prefer emplace_back over push_back * chore: small code style improvements * chore: use proper unsigned types for XAnimParts structs * chore: use better understandable calculations for bitfields * chore: use game names for parts * chore: rename method to WriteNoteTracks * chore: adds comments and improve clearity of what the game does * chore: extract stream writing methods into StreamUtils * chore: use vec3 for XAnimPartTransFrames mins and size * chore: properly differ between XQuat and XQuat2 structs * chore: use constants for xanim flags * chore: use optional for delta track quats and trans * chore: split delta track writing methods into quat and trans * chore: add assertion for bDelta * chore: simplify quat frame encoding indexing * chore: simplify float to int bit casting * chore: do not throw exception on failing to reconstruct bone tracks * feat: add xanim loader for iw3 * fix: make sure to sort quats and trans like the game * chore: prevent empty dumped files on bad xanim data * chore: ensure no exception on zero frames in xanim notifies * test: add system test for iw3 xanims --------- Co-authored-by: Jan Laupetin <jan@laupetin.net>
This commit is contained in:
@@ -12,7 +12,7 @@ The following section specify which assets are supported to be dumped to disk (u
|
||||
| Asset Type | Dumping Support | Loading Support | Notes |
|
||||
| -------------------- | --------------- | --------------- | ---------------------------------------------------------------------------- |
|
||||
| PhysPreset | ✅ | ✅ | |
|
||||
| XAnimParts | ❌ | ❌ | |
|
||||
| XAnimParts | ✅ | ✅ | |
|
||||
| XModel | ✅ | ✅ | Model data can be exported to `XMODEL_EXPORT/XMODEL_BIN`, `OBJ`, `GLB/GLTF`. |
|
||||
| Material | ✅ | ✅ | |
|
||||
| MaterialTechniqueSet | ✅ | ✅ | For shaders: only dumps/loads shader bytecode. |
|
||||
|
||||
Reference in New Issue
Block a user