3D terrain modelling used in light aircraft visibility aid
Nikolaos Ledakis Engonopoulos Abstract CONTEXT: Aviation using light aircrafts is crucial for society to function. As the hardware aspect of those aircrafts improve throughout the years, the software aspect also needs to remain up to date in order for the functions provided to be working as efficiently as possible. Airsafe is a 3D terrain visualisation prototype built in the late 2000s using a now deprecated API for the purpose of modelling the terrain. This prevents the prototype from being optimised and rearchitected for more modern hardware. A more modern low-level language with a modern modelling API will be required to redevelop the prototype in such a way that it can be optimised, while also having the possibility of it being reworked on throughout the following years with the purpose of adapting it to advancements in hardware technology. AIM: Using Rust and WGPU to re-architecture and rebuild the original Airsafe prototype. So, this will result in a program adapted to modern low-end hardware, while also being maintainable throughout the years to come. METHOD: The original Airsafe prototype was studied to determine the cooperation of Java with Java3D, and its additional features were taken into consideration while also analysing the original architecture used. The basic method of visualisation was studied and compared to recent research development in the process of visualisation of Geographic Information Systems, such as varying LOD and use of multiple chunks. The Rust programming language’s and WGPU’s core concepts were also studied. A working prototype was then developed, incorporating all the research done with all features determined to improve the efficiency. This was implemented and tested to establish the level of efficiency achieved. RESULTS: The modernised and original Airsafe versions were compared, and both performances were analysed in metrics of performance and accuracy to the real-world terrain depicted. The result proved the modernised version to be highly more efficient in its rendering process, while also showcasing the evolution in the process of developing low-level software and low-end hardware since the initial development of the prototype. CONCLUSION: This project was determined successful as the aims that were set were achieved, and this allowed for the improvement of the original rendering process, incorporating new hardware architecture, programming language and graphics API with longevity, efficiency and accuracy as its main goals.