^ That all sounds awesome. As a fan of futuristic racers, I have to say that I'm quite looking forward to what you are working on.
I also find it impressive you've mostly been working on paper so far. How far away do you think you are from like a first build?
Yeah those racers have a special appeal. I have a clear vision for ZONE and
so it can take quite awhile before we can see anything resampling the game,
simply because I have to spend a lot of time on the (mathematical) methods.
Most stuff will be new. But the first build of the simulator should be ready
within the next six to eight weeks. Steps to do:
(a) Improve on the formulas.
(b) Need to code it all up (non-optimized)
(c) Simple graphical representation (using OpenGL, I guess)
---
tl;dr
My simulator is going to be way cool and may perhaps lead to a
new game called AIR DRIFT!!!
I've further cranked up the formulas and from what I have up to this point
a flight simulator would already drop out naturally. An AG craft would take a
little more treatment since it interacts with the ground in much more
sophisticated ways, whereas an aircraft sticks to the air almost always.
Recently I ordered some books to read off the aerodynamic coefficients for
lift and drag for some airfoils for use in the equations. That's needed, if
you just don't want to see only Mickey Mouse movement of the aircraft.
Well, the relation between lift, drag, and angle of attack isn't something you
will come up by inspection. The industry spends millions of dollars computing
these data. Fortunately, some of them are free, for example the NACA airfoil
family from NASA. With the help of these data one can build quite realistic
movement of an (air)craft. Well, the data on its own isn't worth so much. But
combined with a good simulator makes you fly.
Due to this, I may eventually release another game before ZONE using the new
simulator to earn some money for further development of ZONE, or I may sell
the simulator to those who want to have some cool flying dynamics in their
games.
Well, it wouldn't be too hard to make kind of a thrilling flying game out of
this if I would stop by now and start coding the simulator all up. Placing
some gates here and there, collecting points, get a bonus for grabbing items
while the aircraft is under zero lift (stalling, air drifting), flying against
the time, having a few different behaving aircrafts etc. would pretty much
guaranty a challenging game just through the sophistication if the simulator.
I think I may call the game AIR DRIFT. Since money burns at a rapid rate, it
seems I have to generate a lil more income, based on the technology am
developing, to stay afloat.
First build of the simulator?
Well, I still have to finish all the equations. And for one I want to have
this variable mass feature implemented. It's going to be very tricky if you
actually want this feature to influence all 6 degrees of freedom of a craft.
It would be easier to realize this if we would neglect the effects on inertia
and hence just only count the loss or increase in mass, without any effects on
the behavior of the craft. This is usually done in simplified rocket science.
But the real kicker here is when the rate of change of mass influences the
craft as well. This, unfortunately, requires to compute the time derivative of
the inertia tensor each timestep. The inertia tensor (describing the mass
distribution of a body around any given axis) is one of the most computational
expensive quantity of all -- and as such neglected almost everywhere xD --.
However, if you really compute the inertia tensor within a coordinate frame
embedded within the craft, having its origin at the center of mass, then the
inertia tensor remains constant over the entire simulation as long as the mass
distribution doesn't change. Now if mass can change during the simulation the
inertia tensor won't remain constant. It becomes dependent on time. So one has
to compute the rate of change of the inertia tensor over time. Up to my
knowledge, no one ever did that outside of rocket science. xD Hell, most games
claiming to be the world's most advanced car/flight simulator don't even
compute the center of mass, nor even the inertia tensor, not speaking about
variable mass. Well, lets look at two examples; X-Plane and Microsoft Flight
Simulator (MSFS). X-Plane claims to be [
cit.] "The World's Most Advanced
Flight Simulator", likewise with MSFS. However both simulators require to
give the center of mass and inertia data as input, as an estimate, see
X-Plane, see
MSFS. Both simulators then use their individual chewing tactics
to crank out a suitable flight model based in these estimates and others. With
respect to my simulator, I actually compute this data and as such I'm able to
consider non-constant behavior of both of these quantities, yielding, within
this regard, a much more advanced flight simulator than both of these
simulators combined. Uhh! Why? Well, X-Plane and MSFS do have many, many
different aircrafts, and it is impossible to get all the data of those
aircraft necessary for implementing a much better simulator. The data they
have is the (surface) geometry of the aircraft and a data sheet including
rough specs like weight, engine performance, inertia, etc.
Well, to be able to compute quantities like center of mass and inertia, one
needs volume information. One would need the aircraft to be modeled as a
volume full of material volumes describing the properties of the aircraft at
each location. You can be rest assured to never get such data from any vendor.
Hence, within this regard, it's the best what X-Plane and MSFS can do. They
have to rely on the given data, which themselves are just very rough
approximations at times. So we can't blame them doing so. But how does this
holds up to "The World's Most Advanced Flight Simulator"? Hmmm. And it doesn't
help having real pilots saying the game feels so natural.
However, good
games nevertheless!
How does it compare to what I'm building?
Now say you model the full airplane by yourself with all the material
properties etc., and have as such all the data available. Wouldn't it be cool
if the simulator would take all these data into account? We could actually
compute the real center of mass and the real inertia tensor, leading to a much
more realistic dynamics of the aircraft. This, as will anybody tell you who
ever had something to do with it, is impossible to compute for a game. And on
a general scale it is, indeed, as I've indicated in one of may latest post. An
aircraft would take GBs of memory and massive computational power making the
whole approach unfeasible for any realtime computation. This is actually the
approach used in the aircraft industry where you have to model and compute the
data this way to get any realistic data out through a simulation predicting
important characteristics of an aircraft.
Well, I'm doing it the same way. I'm also using the full equations and all the
volume masses. So what's the catch? Who says that modeling all the volumes of
an aircraft needs to be so precise and detailed? Looking at the Wright
brothers' aircrafts, one can see that just a few volume elements can make up
an entire aircraft as well, which, independent of the amount of elements used,
needs to undergo the same physical laws. Now here is the kicker; I'm going to
build 'simple' aircrafts out of a few material volumes and feed this data to
the full simulator. This way we will get a much more realistic behavior while
applying the full equations of motion and computing the real center of mass
and real inertial tensor. This should lead to a pretty cool simulator.
The model can be as detailed as you want. It just depends on the resources
you can spend. You may for example build a very detailed one and cut it down
(lumping) to suit a certain computational budget. Etc. Ahh, and don't think
just because the model consist of just a few elements will make the look of
the aircraft appear coarse. Think of the elements (I'm calling them finite
elements) as a skeleton. Warp a nice geometry around and you are up to
something pretty cool.
Now one can see the difference to my approach compared to for example
X-Plane's or MSFS's. My approach requires the real material (volumetric) model
of an aircraft. Given that, a better simulation can be computed. Hence, there
won't be as much aircrafts in my game as you see in X-Plane or MSFS, since
both of these sims only require the geometry of the aircraft and a rough specs
sheet making it easier to include lots of aircrafts into the game, which is
really what people want to see in any flight simulator game.
However, I'm not going to build an all comprehensive flight simulator game.
The simulator I'm talking about here is build for the purpose of simulating
some specific (AG) crafts, and I don't need 10^32 of them. I just need them to
handle realistically. I want you to feel the mass, the momentum, and the
inertia of the craft at any instance. However, one can build a flight
simulator out of it as well. And I'm going to show this with AIR DRIFT, I
think.