# Visualisation for MARSH Named in this order so not everything starts with the same word ## Development This repository uses [Git Submodules](https://git-scm.com/book/en/v2/Git-Tools-Submodules), to get all the code you need to run either: ```sh git clone --recurse-submodules
# Or at any later point git submodule update --init --recursive ``` Using Godot v4.4 beta3 (expect it to change often until 4.4 is released) Install SCons with `pipx install scons`. You will need a C++ compiler, you might have one already on Linux, see below for Windows, otherwise in [Godot documentation](https://docs.godotengine.org/en/stable/contributing/development/compiling/index.html). For updating MAVLink generator, you additionally `pip install future`. It is recommended to install any packages in a [virtual environment](https://docs.python.org/3/library/venv.html), for example: ```sh python3 -m venv venv source venv/bin/activate pip install future ``` Some files are generated, run the following commands on first setup and when dependencies change: ```sh godot --dump-extension-api # after updating Godot python update_mavlink.py # after updating MAVLink dialect python update_addons.py # after changing any addon submodules scons compile_commands # after modifying SConstruct cd project/addons/gdcef; python build.py ``` ### Windows setup The most convenient way of getting a C++ compiler is via the LLVM-MinGW project (by the way, it optimizes the binary more). Download the `llvm-mingw-...-msvcrt-x86_64.zip` from the [Releases page](https://github.com/mstorsjo/llvm-mingw/releases). Unzip the archive to some location you like, and add its `bin` folder to `Path` using the "Edit environment variables for your account" program. ### Build To build the GDExtension binary run SCons in the repository root, the default arguments have been added to the file. ```sh scons ``` When building for Windows with MinGW-LLVM, you need to [select this compiler](https://docs.godotengine.org/en/stable/contributing/development/compiling/compiling_for_windows.html#selecting-a-compiler): ```powershell scons platform=windows use_mingw=yes use_llvm=yes ``` ## Roadmap - When having a short tracker interruption, maintain it in the same position until it times out to minimize the viewport jumps - Try to have some acceptable setup for Varjo even without the tracker - Rework the fly area - Make it bigger - Keep it square to avoid assymetric geometry - Don't use the flat plane, just flatten the terrain - Make the terrain mostly green, but add some small patches of different color - Fix z-figthing when looking at the runway from afar - Reduce pixel artifacts - Adjust antialiasing - Ensure there are mipmaps and they're used - Increase sense of urgency/stress when tracking the visual height cue - Change the perspective to make the ball leave the strip for smaller error - Time to complete the task - Configurable length - Some way to verify completion - Some way to reset it - Sound cue for desired and required timing - Visual timing like progress bar - Also change color - On the vertical cue or instrument panel?