- Notifications
You must be signed in to change notification settings - Fork0
🌍 Blazingly fast orthoimagery for X-Plane 11 and 12.
License
bcsongor/fxpo
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Blazinglyfast orthoimagery for X-Plane 11 and 12.
Open-source projects likeOrtho4XP andAutoOrtho are great tools to bring ortho scenery for X-Plane.Ortho4XP covers the entire scenery building process from assembling vector data to downloading satellite imagery while AutoOrtho builds on top of Ortho4XP providing a solution to stream orthoimages on-demand.
Both, as the last step of the ortho scenery building process, download satellite imagery chunks, assembling and compressing them to a texture format that X-Plane can render.
fxpo optimises this step which—for sufficiently high zoom levels—is also the most time-consuming.
fxpo's optimisations heavily rely on SIMD-capable multicore CPUs, NVIDIA GPUs with high CUDA core counts and a sufficiently high-speed internet connection with low latencies towards orthoimage servers.
Tile | fxpo | Ortho4XP | Speedup |
---|---|---|---|
+57-006 ,ZL17 | 2m 13s | 16m 43s | 7.5x |
(Averages over 5 consecutive runs.)
Running on Intel Core i9-13900KS, NVIDIA GetForce RTX 4090 and300 Mbps download speeds with ~4 ms latency towardvirtualearth.net
servers,fxpo shows a 7x performance improvement over Ortho4XP (commit7ed9a09;max_convert_slots
set to 32) downloading tile+57-006
at zoom level 17.
Use Ortho4XP to assemble vector data, triangulate mesh, draw masks and build DSF (setskip_downloads
toTrue
inOrtho4XP.cfg
) for the given tileset. Once complete, usefxpo to download and build orthoimage textures for the tileset.
Usage: fxpo "<scenery_path>" "<tileset>" <scenery_path> is the path to X-Plane's Custom Scenery folder. Example: C:\X-Plane 12\Custom Scenery <tileset> is the coordinates of the tileset to download and process. Example: +57-006
The above example expects the pathC:\X-Plane 12\Custom Scenery\zOrtho4XP_+57-006
to exist.
fxpo requires Windows. The code-base is relatively platform independent so with some effort it should be possible to port it to Linux and macOS.
As of now no precompiled binaries are provided (community builds are more than welcome!). Please see the next section for instructions on how to buildfxpo.
fxpo is experimental and bugs are expected.
- CMake
- vcpkg
- Visual Studio 2022
- NVIDIA Texture Tools (NVTT) 3 SDK(requires NVIDIA Developer account)
- NVIDIA CUDA Toolkit 11.8
Generate the project files with CMake
cmake --preset windows-x64-release -B cmake-build-windows-x64-release
Buildfxpo
cmake --build cmake-build-windows-x64-release --config Release
About
🌍 Blazingly fast orthoimagery for X-Plane 11 and 12.