<feed xmlns='http://www.w3.org/2005/Atom'>
<title>fparkan/docs/specs, branch devel</title>
<subtitle>Utilities and tools for the game "Parkan: Iron Strategy".
</subtitle>
<id>https://git.popov.link/fparkan/atom?h=devel</id>
<link rel='self' href='https://git.popov.link/fparkan/atom?h=devel'/>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/'/>
<updated>2026-02-19T12:10:57+00:00</updated>
<entry>
<title>updated docs</title>
<updated>2026-02-19T12:10:57+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-19T12:10:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=31d849ddbf897a5087f46d9b3cb0054a397aeb1c'/>
<id>urn:sha1:31d849ddbf897a5087f46d9b3cb0054a397aeb1c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add terrain-core, tma, and unitdat crates with parsing functionality</title>
<updated>2026-02-19T12:07:01+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-19T12:07:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=4ef08d0bf6366b0bc8ccb6357b794937411f74cc'/>
<id>urn:sha1:4ef08d0bf6366b0bc8ccb6357b794937411f74cc</id>
<content type='text'>
- Introduced `terrain-core` crate for loading and processing terrain mesh data.
- Added `tma` crate for parsing mission files, including footer and object records.
- Created `unitdat` crate for reading unit data files with validation of structure.
- Implemented error handling and tests for all new crates.
- Documented object registry format and rendering pipeline in specifications.
</content>
</entry>
<entry>
<title>Документирование и обновление спецификаций</title>
<updated>2026-02-19T07:07:04+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-19T07:07:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=0d7ae6a017b8b2bf26c5c14c39cb62b599e8262d'/>
<id>urn:sha1:0d7ae6a017b8b2bf26c5c14c39cb62b599e8262d</id>
<content type='text'>
- Обновлены спецификации `runtime-pipeline`, `sound`, `terrain-map-loading`, `texture`, `ui` и `wear`.
- Добавлены разделы о статусе покрытия и оставшихся задачах для достижения 100% завершенности.
- Внесены уточнения по архитектурным ролям, минимальным контрактам и требованиям к toolchain для каждой подсистемы.
- Уточнены форматы данных и правила взаимодействия между компонентами системы.
</content>
</entry>
<entry>
<title>feat: Enhance model and texture loading with improved error handling and new features</title>
<updated>2026-02-19T01:19:18+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-19T01:19:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=a281ffa32ea615670d369503692f057b2dc60e6f'/>
<id>urn:sha1:a281ffa32ea615670d369503692f057b2dc60e6f</id>
<content type='text'>
- Introduced `LoadedModel` and `LoadedTexture` structs for better encapsulation of model and texture data.
- Added functions to load models and textures from archives, including support for resolving textures based on materials and wear entries.
- Implemented error handling for missing textures, materials, and wear entries.
- Updated the rendering pipeline to support texture loading and binding, including command-line arguments for texture customization.
- Enhanced the `texm` crate with new decoding capabilities for various pixel formats, including indexed textures.
- Added tests for texture decoding and loading to ensure reliability and correctness.
- Updated documentation to reflect changes in the material and texture resolution process.
</content>
</entry>
<entry>
<title>feat(render-parity): add deterministic frame comparison tool</title>
<updated>2026-02-19T01:02:26+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-19T01:02:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=18d4c6cf9fabc18282b29d103c8d30024f66e49b'/>
<id>urn:sha1:18d4c6cf9fabc18282b29d103c8d30024f66e49b</id>
<content type='text'>
- Introduced `render-parity` crate for comparing rendered frames against reference images.
- Added command-line options for specifying manifest and output directory.
- Implemented image comparison metrics: mean absolute difference, maximum absolute difference, and changed pixel ratio.
- Created a configuration file `cases.toml` for defining test cases with global defaults and specific parameters.
- Added functionality to capture frames from `render-demo` and save diff images on discrepancies.
- Updated documentation to include usage instructions and CI model for automated testing.
</content>
</entry>
<entry>
<title>Refactor documentation structure and add new specifications</title>
<updated>2026-02-19T00:46:23+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-19T00:46:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=0e19660eb5122c8c52d5e909927884ad5c50b813'/>
<id>urn:sha1:0e19660eb5122c8c52d5e909927884ad5c50b813</id>
<content type='text'>
- Updated MSH documentation to reflect changes in material, wear, and texture specifications.
- Introduced new `render.md` file detailing the render pipeline process.
- Removed outdated sections from `runtime-pipeline.md` and redirected to `render.md`.
- Added detailed specifications for `Texm` texture format and `WEAR` wear table.
- Updated navigation in `mkdocs.yml` to align with new documentation structure.
</content>
</entry>
<entry>
<title>Refactor code structure for improved readability and maintainability</title>
<updated>2026-02-12T11:07:25+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-12T11:07:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=8a69872576eed41a918643be52a80fe74a054974'/>
<id>urn:sha1:8a69872576eed41a918643be52a80fe74a054974</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: добавить экспорт в формат OBJ для рендеринга террейна и опциональных полигонов</title>
<updated>2026-02-12T10:36:15+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-12T10:36:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=aa68906a3de37eaa1b8b5e9af738abfe5b85c7f8'/>
<id>urn:sha1:aa68906a3de37eaa1b8b5e9af738abfe5b85c7f8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add terrain map documentation validator</title>
<updated>2026-02-12T10:17:41+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-12T10:17:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=669fb40a70fb975f75fa986921b9daaac1f14a0c'/>
<id>urn:sha1:669fb40a70fb975f75fa986921b9daaac1f14a0c</id>
<content type='text'>
This commit introduces a new Python script, `terrain_map_doc_validator.py`, which validates terrain and map documentation assumptions against actual game data. The validator checks for the presence and correctness of various data chunks in the `Land.msh` and `Land.map` files, reporting any issues found during the validation process. It also generates a summary report of the validation results, including counts of errors and warnings, and statistics related to the map and mesh data.
</content>
</entry>
<entry>
<title>feat: обновить заголовки разделов в документации по FXID и NRes для улучшения структуры</title>
<updated>2026-02-11T22:10:43+00:00</updated>
<author>
<name>Valentin Popov</name>
<email>valentin@popov.link</email>
</author>
<published>2026-02-11T22:10:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.popov.link/fparkan/commit/?id=615891d550b23701aac4ac8cb7a475104d0a9592'/>
<id>urn:sha1:615891d550b23701aac4ac8cb7a475104d0a9592</id>
<content type='text'>
</content>
</entry>
</feed>
