View The Document

Accession Number:



Two Published Flight Dynamics Models Rewritten in Rust and Structured as an ECS


Author Organization(s):

Report Date:



This thesis explores using the Entity-Component System (ECS) architecture to implement a Flight Dynamics Model (FDM) by re-implementing two published versions in the Rust programming language using the Specs Parallel ECS (SPECS) for military simulation advancement. One FDM is based on Grant Palmer's published textbook titled Physics for Game Programmers, and another is based on David Bourg's textbook titled Physics for Game Developers. Furthermore, this thesis uses these models within an interactive flight simulator. The ECS architecture is based on the Data-Oriented Design (DOD) paradigm, where Components contain the data and the Systems implement the behavior which transforms data. The specific ECS selected for this research is the Rust-based SPECS framework. One goal of this research is to define the Components and the Systems of an ECS for the two FDMs and use them to build a flight simulator by creating additional Systems and Components to read keyboard inputs and send User Datagram Protocol (UDP) packets to the FlightGear application for visualization [4].The ECS Systems used to calculate the equations of motion both for the Palmer-based and Bourg-based FDMs functionality were tested against the original code and were found to work as expected within a floating-point tolerance. A benchmark comparison between both FDMs determined that the Palmer model is faster on average than the Bourg model. Moreover, the re-implemented FDMs were successfully used to create interactive flight simulators using FlightGear for visualization.



File Size:





Communities of Interest:

Distribution Statement:

Approved For Public Release

View The Document