Jan Laupetin
582d8abbbf
feat: reorder bones when their order is not corresponding to xmodel constraints
2026-05-03 21:01:38 +02:00
Jan Laupetin
92e236b1fe
chore: only allocate 3 floats per bone for applicable games
2026-05-03 17:19:48 +02:00
Jan Laupetin
875e1fb360
fix: properly load all root bones from gltf
2026-05-03 16:35:15 +02:00
Jan Laupetin
ff7b940e86
fix: properly dump gltf with root node in models with more than one root bone
2026-05-03 16:35:06 +02:00
Jan Laupetin
2d2ea30b45
fix: iw5 uses isFrictionInfinity as well
2026-05-03 16:00:30 +02:00
Jan Laupetin
a31d3c4b88
fix: iw4 physpreset uses FLT_MAX as infinite friction
2026-05-03 15:56:09 +02:00
Jan Laupetin
67bdb79654
fix: do not clamp iw4 physpreset mass
2026-05-03 15:46:52 +02:00
Jan Laupetin
0c1bc747dc
chore: update default root bone name to empty string and do not specify if matching default name
2026-05-03 13:51:56 +02:00
Jan Laupetin
ed1ed73c73
chore: warn about mismatching root bone name between model and xmodel json
2026-05-03 13:40:31 +02:00
Jan Laupetin
989d29b359
feat: support root bone name from xmodel json
2026-05-03 13:27:35 +02:00
Jan Laupetin
b7a22973e6
chore: make sure xmodel flags are unsigned
2026-05-03 13:09:03 +02:00
Jan Laupetin
4886767e67
chore: get rid of unnecessary class in XModelDumper
2026-05-03 13:09:03 +02:00
Jan Laupetin
2527f23c10
chore: use references when possible in xmodel dumper
2026-05-03 13:09:02 +02:00
Jan Laupetin
d6a736eb5d
feat: preserve root bone name when dumping xmodels with omitted default armature
2026-05-03 13:09:02 +02:00
Michael Oliver
618592e411
fix: only omit default armature if it can be omitted for all lods
2026-05-03 13:09:02 +02:00
Jan Laupetin
f3859e6952
fix: iw3 vert lists are sometimes not complete
2026-05-03 13:09:02 +02:00
Jan Laupetin
08c128addd
feat: accept aliases for asset type names
2026-05-02 18:08:12 +02:00
Jan Laupetin
0cbe0c2891
chore: adjust asset type names for light def
2026-05-02 16:01:11 +02:00
njohnson
1d6c028454
Clang format.
2026-05-02 12:04:51 +02:00
njohnson
0eb1f9f978
Add IW5 SndCurve dumper.
2026-05-02 12:04:51 +02:00
njohnson
6400b57caf
Add dumper logic from IW4.
2026-05-02 12:04:51 +02:00
njohnson
dec2ae96cb
Add loader logic from IW4.
2026-05-02 12:04:50 +02:00
njohnson
3136a03754
Add dumper and loader call to parents.
2026-05-02 12:04:45 +02:00
Paging Red
759a3ccf0e
Merge pull request #753 from pagingred/iw5_physpreset_dumper
...
feat: phys presets dumping and loading for IW3, IW5, T5
2026-05-02 12:01:59 +02:00
Jan
6b7752376a
Merge pull request #780 from Laupetin/fix/iw3-part-classification
...
fix: incomplete iw3 part classification
2026-05-01 22:37:59 +02:00
Jan
8eb76070a2
Merge pull request #769 from michaeloliverx/refactor-arch-wordsize
...
refactor(zcg): use wordsize instead of architecture
2026-05-01 22:33:14 +02:00
Jan
51b741e16c
Merge pull request #760 from michaeloliverx/xmodel-glTF-dump-bug
...
fix: xmodel glTF dumps dropping `COLOR_0` vertex attributes
2026-05-01 22:20:39 +02:00
Jan
3dbc70755c
Merge pull request #759 from michaeloliverx/asset-source-log
...
feat: add asset source description to loading logs
2026-05-01 22:04:36 +02:00
Jan Laupetin
4d66911203
fix: incomplete iw3 part classification
2026-05-01 21:52:10 +02:00
Jan Laupetin
1d6a9d6df1
chore: only dump gltf color when there is non-default data
2026-05-01 21:48:41 +02:00
Michael Oliver
98d8ea9005
fix: xmodel glTF dumps dropping COLOR_0 vertex attributes
2026-05-01 21:48:28 +02:00
Michael Oliver
97591f59f4
refactor(zcg): use wordsize instead of architecture
2026-04-30 13:50:11 +01:00
Jan Laupetin
3063550931
chore: adjust asset source description a bit
2026-04-27 21:29:14 +02:00
Michael Oliver
3aa28a0ded
fix: IW3 ensure XModel::surfs is set in loader
2026-04-27 18:24:02 +01:00
Michael Oliver
a3e6529925
feat: add asset source description to loading logs
2026-04-27 10:07:11 +01:00
Paging Red
010ac3ad3e
Add IW3 PhysPreset dump logic ( #744 )
...
* Copied template from font.
* Create PhysPreset writer from Font dumper template.
* Completely refactor to match previous implementation.
* Remove files from previous implementation.
* Fix PhysPresetFields.
* Add missing fields and correct order.
* Add static infinity check as builtin does not work.
* Wasn't clang formatted.
* Remove unused 'perSurfaceSndAlias' field.
* Removed unsupported vals (tracer & vehicle) and un-needed vals (material).
* Make order match struct and mark 'tempDefaultToCylinder' as QBOOLEAN.
* Make order match struct and clamp vals for 'mass' and 'tempDefaultToCylinder'.
* Remove un-needed includes and add limits for float max.
* Remove clamping of mass.
* Use float max to determine if friction is infinite.
* Clang format.
* chore: formatting
* chore: do not use classes for obj constants
---------
Co-authored-by: njohnson <gitea.nicholasjohnson.info>
Co-authored-by: Jan Laupetin <jan@laupetin.net >
2026-04-23 23:27:34 +02:00
Jan Laupetin
778f238779
chore: update npm dependencies
2026-04-20 21:46:36 +01:00
Jan Laupetin
eee44b5860
chore: use ordered_json for gltf
...
order is based on what blender does
https://github.com/KhronosGroup/glTF-Blender-IO/blob/7bea3666f8b5043292e578501a779f244d8e8f06/addons/io_scene_gltf2/io/exp/export.py#L48
2026-04-20 20:08:46 +01:00
Jan Laupetin
0ae7186409
chore: allow arbitary type conversions for ordered_json
2026-04-20 20:08:46 +01:00
Jan Laupetin
535f0e299c
chore: use libtomcrypt rsa_verify_hash_v2 as old method was deprecated
2026-04-19 21:26:34 +01:00
Jan Laupetin
f9f93b33ec
fix: bad image external loading condition for t6
...
* change picked from edd6aef2c578b65c3718dc55a2f366bc488f5243 by hc20k
2026-04-17 22:31:05 +02:00
Jan Laupetin
52bd60a799
chore: refuse to use npm version that does not support min-release-age
2026-04-05 09:42:06 +02:00
Jan Laupetin
514700a41f
chore: update package-lock deps
2026-04-05 09:42:02 +02:00
Jan Laupetin
6ef0cd8266
chore: add min-release-age setting in npmrc
2026-04-05 09:39:45 +02:00
Jan Laupetin
4242c4a325
refactor: use std::expected instead of custom implementation
2026-04-04 14:47:10 +02:00
dependabot[bot]
604871c679
chore(deps): bump the modman-dependencies group
...
Bumps the modman-dependencies group in /src/ModManUi with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [vue](https://github.com/vuejs/core ) | `3.5.31` | `3.5.32` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) | `25.5.0` | `25.5.2` |
| [@vitest/eslint-plugin](https://github.com/vitest-dev/eslint-plugin-vitest ) | `1.6.13` | `1.6.14` |
| [eslint](https://github.com/eslint/eslint ) | `10.1.0` | `10.2.0` |
| [sass](https://github.com/sass/dart-sass ) | `1.98.0` | `1.99.0` |
Updates `vue` from 3.5.31 to 3.5.32
- [Release notes](https://github.com/vuejs/core/releases )
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md )
- [Commits](https://github.com/vuejs/core/compare/v3.5.31...v3.5.32 )
Updates `@types/node` from 25.5.0 to 25.5.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `@vitest/eslint-plugin` from 1.6.13 to 1.6.14
- [Release notes](https://github.com/vitest-dev/eslint-plugin-vitest/releases )
- [Commits](https://github.com/vitest-dev/eslint-plugin-vitest/compare/v1.6.13...v1.6.14 )
Updates `eslint` from 10.1.0 to 10.2.0
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/compare/v10.1.0...v10.2.0 )
Updates `sass` from 1.98.0 to 1.99.0
- [Release notes](https://github.com/sass/dart-sass/releases )
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md )
- [Commits](https://github.com/sass/dart-sass/compare/1.98.0...1.99.0 )
---
updated-dependencies:
- dependency-name: vue
dependency-version: 3.5.32
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: "@types/node"
dependency-version: 25.5.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: "@vitest/eslint-plugin"
dependency-version: 1.6.14
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: eslint
dependency-version: 10.2.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: modman-dependencies
- dependency-name: sass
dependency-version: 1.99.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: modman-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-03 22:16:22 +00:00
dependabot[bot]
5acd9ff01a
chore(deps): bump the modman-dependencies group
...
Bumps the modman-dependencies group in /src/ModManUi with 8 updates:
| Package | From | To |
| --- | --- | --- |
| [vue](https://github.com/vuejs/core ) | `3.5.30` | `3.5.31` |
| [@types/jsdom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jsdom ) | `28.0.0` | `28.0.1` |
| [@vitest/eslint-plugin](https://github.com/vitest-dev/eslint-plugin-vitest ) | `1.6.12` | `1.6.13` |
| [@vue/tsconfig](https://github.com/vuejs/tsconfig ) | `0.9.0` | `0.9.1` |
| [typescript](https://github.com/microsoft/TypeScript ) | `5.9.3` | `6.0.2` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) | `8.0.1` | `8.0.3` |
| [vite-plugin-vue-devtools](https://github.com/vuejs/devtools/tree/HEAD/packages/vite ) | `8.1.0` | `8.1.1` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest ) | `4.1.0` | `4.1.2` |
Updates `vue` from 3.5.30 to 3.5.31
- [Release notes](https://github.com/vuejs/core/releases )
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md )
- [Commits](https://github.com/vuejs/core/compare/v3.5.30...v3.5.31 )
Updates `@types/jsdom` from 28.0.0 to 28.0.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jsdom )
Updates `@vitest/eslint-plugin` from 1.6.12 to 1.6.13
- [Release notes](https://github.com/vitest-dev/eslint-plugin-vitest/releases )
- [Commits](https://github.com/vitest-dev/eslint-plugin-vitest/compare/v1.6.12...v1.6.13 )
Updates `@vue/tsconfig` from 0.9.0 to 0.9.1
- [Release notes](https://github.com/vuejs/tsconfig/releases )
- [Commits](https://github.com/vuejs/tsconfig/compare/v0.9.0...v0.9.1 )
Updates `typescript` from 5.9.3 to 6.0.2
- [Release notes](https://github.com/microsoft/TypeScript/releases )
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.9.3...v6.0.2 )
Updates `vite` from 8.0.1 to 8.0.3
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/create-vite@8.0.3/packages/vite )
Updates `vite-plugin-vue-devtools` from 8.1.0 to 8.1.1
- [Release notes](https://github.com/vuejs/devtools/releases )
- [Commits](https://github.com/vuejs/devtools/commits/v8.1.1/packages/vite )
Updates `vitest` from 4.1.0 to 4.1.2
- [Release notes](https://github.com/vitest-dev/vitest/releases )
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.2/packages/vitest )
---
updated-dependencies:
- dependency-name: vue
dependency-version: 3.5.31
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: "@types/jsdom"
dependency-version: 28.0.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: "@vitest/eslint-plugin"
dependency-version: 1.6.13
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: "@vue/tsconfig"
dependency-version: 0.9.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: typescript
dependency-version: 6.0.2
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: modman-dependencies
- dependency-name: vite
dependency-version: 8.0.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: vite-plugin-vue-devtools
dependency-version: 8.1.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: vitest
dependency-version: 4.1.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-27 22:16:33 +00:00
dependabot[bot]
4c0501ec90
chore(deps): bump the modman-dependencies group
...
Bumps the modman-dependencies group in /src/ModManUi with 6 updates:
| Package | From | To |
| --- | --- | --- |
| [vue-router](https://github.com/vuejs/router ) | `5.0.3` | `5.0.4` |
| [eslint](https://github.com/eslint/eslint ) | `10.0.3` | `10.1.0` |
| [jiti](https://github.com/unjs/jiti ) | `2.5.1` | `2.6.1` |
| [jsdom](https://github.com/jsdom/jsdom ) | `28.1.0` | `29.0.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) | `8.0.0` | `8.0.1` |
| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc ) | `3.2.5` | `3.2.6` |
Updates `vue-router` from 5.0.3 to 5.0.4
- [Release notes](https://github.com/vuejs/router/releases )
- [Commits](https://github.com/vuejs/router/compare/v5.0.3...v5.0.4 )
Updates `eslint` from 10.0.3 to 10.1.0
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/compare/v10.0.3...v10.1.0 )
Updates `jiti` from 2.5.1 to 2.6.1
- [Release notes](https://github.com/unjs/jiti/releases )
- [Changelog](https://github.com/unjs/jiti/blob/main/CHANGELOG.md )
- [Commits](https://github.com/unjs/jiti/compare/v2.5.1...v2.6.1 )
Updates `jsdom` from 28.1.0 to 29.0.1
- [Release notes](https://github.com/jsdom/jsdom/releases )
- [Commits](https://github.com/jsdom/jsdom/compare/v28.1.0...v29.0.1 )
Updates `vite` from 8.0.0 to 8.0.1
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/create-vite@8.0.1/packages/vite )
Updates `vue-tsc` from 3.2.5 to 3.2.6
- [Release notes](https://github.com/vuejs/language-tools/releases )
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md )
- [Commits](https://github.com/vuejs/language-tools/commits/v3.2.6/packages/tsc )
---
updated-dependencies:
- dependency-name: vue-router
dependency-version: 5.0.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: eslint
dependency-version: 10.1.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: modman-dependencies
- dependency-name: jiti
dependency-version: 2.6.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: modman-dependencies
- dependency-name: jsdom
dependency-version: 29.0.1
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: modman-dependencies
- dependency-name: vite
dependency-version: 8.0.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
- dependency-name: vue-tsc
dependency-version: 3.2.6
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: modman-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-20 22:35:59 +00:00
Jan Laupetin
d050721142
chore: add additional known texture def hashes for iw5
2026-03-19 21:20:24 +01:00
Jan Laupetin
b98ae1fdc8
fix: properly dump iw5 vertex sampler
2026-03-19 19:26:33 +01:00