Credits:
A big thank you to Dezinater for creating the RustWorldJS library, which is used to decompress and load the map. Without this library, I probably would have never started this map viewer. I modified the library and added the image generator, which is used to generate the map images.
Three.js is used for all the 3D rendering.
Future Todos:
- improve performance
- add custom map color config
- generate procedural maps in js and wasm
- 3d marks on the map and mini map (potential with multiplayer support)