chore: simplify project to engine docs and tests
Remove planning and acceptance scaffolding while retaining the native Vulkan mission preview, format readers, runtime algorithms, and ordinary Rust tests. Keep the book aligned with the runnable project and validate checked-in shaders without generated tool metadata.
This commit is contained in:
@@ -47,7 +47,7 @@ Validated `ModelAsset` также сохраняет decoded type 8 keys и type
|
||||
`ModelAnimation`. `node38_fallback_pose` возвращает pose по `fallback_key`,
|
||||
то есть доказанный static input. `parent_or_link == 0xFFFF` означает root;
|
||||
иначе это parent index, обязательно меньший индекса child. Этот контракт
|
||||
подтверждён на licensed animation gates обеих частей и защищён fallback-ом:
|
||||
подтверждён на тестах анимации с оригинальными ресурсами обеих частей и защищён fallback-ом:
|
||||
модель с нарушенным порядком не получает придуманную hierarchy.
|
||||
|
||||
В legacy-camera static preview стандартный узел уже получает свой fallback pose
|
||||
@@ -58,10 +58,6 @@ pose применяется `Rz * Ry * Rx`, scale и mission translation. Гео
|
||||
быть нарисован разными node poses. Это static fallback hierarchy, а не полная
|
||||
animation parity: dynamic type-19 frame-map sampling остаётся отдельной задачей.
|
||||
|
||||
Для воспроизводимого исследования `fparkan-cli model inspect --root <game>
|
||||
--archive <archive> --resource <model.msh>` выводит Node38 metadata, включая
|
||||
parent index, fallback key и наличие LOD0/group0 geometry.
|
||||
|
||||
## Slot and batch
|
||||
|
||||
Type 2 содержит header `0x8C`, затем `Slot68`:
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
# Оригинальные модули
|
||||
|
||||
RVA в книге относится к определённой сборке DLL. SHA-256 позволяет
|
||||
проверить, что сравнивается тот же код.
|
||||
|
||||
## Совпадающие модули частей 1 и 2
|
||||
|
||||
| Binary | SHA-256 | Size | Notes |
|
||||
| --- | --- | ---: | --- |
|
||||
| `Ngi32.dll` | `bab9840d94f4e4e74ffc26677724fa896cf4823845504d09a9e025f80016edf5` | 253952 | Shared low-level render/resource/audio boundary |
|
||||
| `World3D.dll` | `17e4a3089b2583a8cf2356c9db0390b1aba138356a09130d79b4e7e4791da61e` | 208896 | Shared gameplay/world/render lifecycle baseline |
|
||||
| `Terrain.dll` | `6d3e68f0e15b297f6c184af3113baf1f31e19c3326c18f0150dec659242ed667` | 708608 | Shared terrain/shade/world baseline |
|
||||
| `iron_3d.exe` / `iron_3d_p2.exe` | `f476af85c034a4b4f34f49d0806e4dff397b5da0ee26d382a7674231144979f7` | 36864 | Shared launcher binary |
|
||||
|
||||
## Сборка GOG
|
||||
|
||||
The canonical disassembly source is the windowed GOG installation, not the
|
||||
Part 1/Part 2 test installations. Its `Terrain.dll` is a distinct revision:
|
||||
|
||||
| Binary | SHA-256 | Size | Notes |
|
||||
| --- | --- | ---: | --- |
|
||||
| `Terrain.dll` | `af87d1b2e728a0be73c52be3b44cc196ab46da7799f25a15d40f8c9b0b425ead` | 499712 | GOG camera receiver evidence; do not reuse Part 1/2 RVAs without a matching hash |
|
||||
|
||||
## Различающиеся модули
|
||||
|
||||
Эти модули нельзя автоматически считать behavior-compatible между частями:
|
||||
|
||||
- `AniMesh.dll`
|
||||
- `Effect.dll`
|
||||
- `iron3d.dll`
|
||||
- `services.dll`
|
||||
- `Control.dll`
|
||||
- `ArealMap.dll`
|
||||
Reference in New Issue
Block a user