RSE-Model/README.md
JackCarterSmith 7114278842
All checks were successful
JCS-Prod/RSE-Model/pipeline/head This commit looks good
Conan asspain
2025-02-01 16:09:06 +01:00

58 lines
2.2 KiB
Markdown

# RogueSquadron Extractor - MODEL module
Inspired by the work of **dpethes** (https://github.com/dpethes/rerogue) :clap:
This set of git repos are a compilation of tools coded in C to make RS modding far more than a dream!
The collection consist of few independants modules, each of them deals with specific data like sound, textures, heightmaps, etc...
All modules are independants. This is the **'MODEL'** module.
[![Build Status](https://ci.jcsmith.fr/job/JCS-Prod/job/RSE-Model/job/master/badge/icon)](https://ci.jcsmith.fr/job/JCS-Prod/job/RSE-Model/job/master/)
## MODEL MODULE
It's extract 3D rendering datas from Rogue Squadron 3D (PC) game models files (HOB).
This module can do:
- Extract objects inside HOB files to Wavefront OBJ format,
- Extract automatically inside subfolder (usefull when you have multiples objects to extract),
- Multiple inputs files.
## TODO
- Add textures to models.
- Discover all unknowns fields, animations, bones mesh, etc.
- Full Conan build pipeline
### Using
`RSEModel [options] <hob files...>` or you can simply drag&drop HOB files on it.
A futur main program can extract all HOB files directly from DAT file.
Due to issues with copyrights, I can't provide samples and my DAT file parser is unfinished... You need to extract HOB files yourself.
<img src="https://repo.jcsmith.fr/pictures/rse-model.gif" width="620" height="400" />
### Options
- -h Print this message
- -v,-vv Activate verbose/debug output mode respectively
- -no-subdir Extract textures directly inside current folder
- -mtl Export materials datas with OBJ model
### Dependencies
- obj-lib: as obj file exporter. (https://git.jcsmith.fr/jackcartersmith/obj)
### Compiling
I've a preference for compiling libraries by hand, mainly for backward compatibility, but I recommend using Conan packages manager (https://conan.io) for simplicity. (**Don't forget git submodules**)
```shell
conan install . -of build -b missing -s build_type=Release -o tools=True -pr:b=default -pr:h=default
cmake --preset conan-release -G "Unix Makefiles"
cmake --build --preset conan-release
```
On Windows environment, you can use MinGW `-G "MinGW Makefiles"` or Ninja `-G "Ninja"` as CMake generator.