Hacker News new | past | comments | ask | show | jobs | submit login
Simple Physics-based Flight Simulation with C++ (jakobmaier.at)
163 points by quintussss on Feb 12, 2023 | hide | past | favorite | 17 comments



One of the citations is brihernandez/SimpleWings; Hernandez is better known as indie dev Why485, creator of Tiny Combat Arena, a throwback flight sim to the A-10 Cuba era. (Of course the reborn MicroProse picked it up.) https://store.steampowered.com/app/1347550/Tiny_Combat_Arena...

Why's GitHub repo is full of useful things for game devs, especially Unity but also C++. https://github.com/brihernandez/Ergo is maybe most relevant to this post for being a C++ implementation of a basic 3D space shooter engine built on raylib.


Nice!

Reminds me of this amazing (for the time) book which taught me a ton about the topic when I was in my first year at uni learning c++

https://books.google.at/books/about/Flights_of_Fantasy.html?...


Wow. "Using Borland C++ compiler and BASM assembler as a programming platform". I had to get this just to see what the code was like back in 1993... Luckily/unluckily I got started on silicon graphics machines, so never needed to perform the heroic hoop-jumping that 3d engines needed on pcs at the time.

This will go nicely with "Methods of Orbit Determination for the Micro Computer" (1991) which published by AFIT and has some incredibly useful simulation content...with examples in BASIC


This was a wonderful book, it really helped lift the veil on how more complicated things were written in code for me. Also, I remember I was at the mall with my uncle and he offered to buy me a gift. I went straight to the bookstore and picked out this book. He was surprised that I picked out a book on programming, and rewarded me with some extra cash after purchasing the book.


True. There was another book called "Build your own Flight Sim in C++" by Michael Radtke and Christopher Lampton, but I personally like "Flights of Fantasy" better.


The same author has another book from around the same time called "Gardens of Imagination" which explains how to write a Wolfenstein 3d-style raycaster. I can highly recommend that book as well.


Great book! Helped me finally understand how to implement variable height walls in the raycaster for my current game.


the book can be borrowed at the Internet Archive: https://archive.org/details/flightsoffantasy00lamp


How to create simple but realistic looking flight simulation from scratch with C++.



It probably wasn't a question :) but piling on: https://github.com/YSFlight-opensource/YSFLIGHT


> YSFlight

I'm aware of YSFlight (used it since 2015), but it has a lot of issues and repo does not include whole commits history (it was opensourced year ago as a snapshot of latest version code base with few commits on top of it), so might be not a good example of simple flight simulator.

Physics of YSFlight described in community fork repo.[0]

Till YSFlight became open-source, its physics was a "black box" and there was a research on reverse engineering its physics using game data logs.[1]

Also, there is another fork with few fixes & enhancements, including in its flight simulator physics engine.[2]

[0] https://github.com/YSCEDC/YSCE/blob/master/Documentation/YSF...

[1] https://sites.google.com/site/ysdecaff/ysflight-scientific-r...

[2] https://github.com/pasutisu/YSFLIGHT


There is also FlightGear[0] which is FOSS[1].

I cannot judge how realistic its physics engine is, but it is marketed as a ‘professional’ flight simulator.

[0]: https://www.flightgear.org/ [1]: https://sourceforge.net/projects/flightgear/


“Too realistic,” I’d say - it’s the only FS where I was never able to take off in a Cessna 172. (Even after having flown a real one.)


FlightGear is not "simple".


I struggled to understand the coordinate system, probably because he puts the ailerons in front of the wings!


You are right, the ailerons are really in front of the wings, which if of course wrong. I will update this and add some info on the coordinate system!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: