Valentin Popov a281ffa32e
Some checks failed
Test / Lint (push) Failing after 1m10s
Test / Test (push) Has been skipped
Test / Render parity (push) Has been skipped
feat: Enhance model and texture loading with improved error handling and new features
- 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.
2026-02-19 05:19:18 +04:00
2026-01-30 04:27:02 +04:00
2024-02-06 02:26:50 +04:00

FParkan

Open source проект с реализацией компонентов игрового движка игры «Паркан: Железная Стратегия» и набором вспомогательных инструментов для исследования.

Описание

Проект находится в активной разработке и включает:

  • библиотеки для работы с форматами игровых архивов;
  • инструменты для валидации/подготовки тестовых данных;
  • спецификации форматов и сопутствующую документацию.

Установка

Проект находится в начальной стадии, подробная инструкция по установке пока отсутствует.

Документация

Инструменты

Вспомогательные инструменты находятся в каталоге tools/.

  • tools/archive_roundtrip_validator.py — инструмент верификации документации по архивам NRes/RsLi на реальных файлах (включая unpack -> repack -> byte-compare).
  • tools/init_testdata.py — подготовка тестовых данных по сигнатурам с раскладкой по каталогам.

Библиотеки

  • crates/nres — библиотека для работы с файлами архивов NRes (чтение, поиск, редактирование, сохранение).
  • crates/rsli — библиотека для работы с файлами архивов RsLi (чтение, поиск, загрузка/распаковка поддерживаемых методов).

Тестирование

Базовое тестирование проходит на синтетических тестах из репозитория.

Для дополнительного тестирования на реальных игровых ресурсах:

  • используйте tools/init_testdata.py для подготовки локального набора;
  • используйте оригинальную копию игры (диск или GOG-версия);
  • игровые ресурсы в репозиторий не включаются, так как защищены авторским правом.

Contributing & Support

Проект активно поддерживается и открыт для contribution. Issues и pull requests можно создавать в обоих репозиториях:

Основная разработка ведётся в self-hosted репозитории.

Лицензия

Проект распространяется под лицензией GNU GPL v2.

Description
Utilities and tools for the game "Parkan: Iron Strategy".
https://fparkan.popov.link
Readme 26 MiB
Languages
Rust 69.5%
Python 30.5%