# 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] ` 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. ### 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 . --build=missing -pr:b=default -pr:h=default cd build cmake .. -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Release -G "Unix Makefiles" cmake --build . ``` On Windows environment, you can use MinGW `-G "MinGW Makefiles"` or Ninja `-G "Ninja"` as CMake generator.