In 2008 & 2009 I built the 3d graphics engine that
powered the visual system used for an FAA approved full flight airplane
simulator used to train airplane pilots.
Several key challenges made this project both very rewarding and very
First, to create an immersive environment, the visual system
images projected the world on a 10' high by 40' long cylindrical screen. So, instead of just creating a standard 3d
engine which projects 3d images unto a 2d screen, I actually had to calculate
how to project the 3d image to the inside of a room sized cylinder. That was actually the start of the project
challenges I faced with the physical set up of the simulator setup; the
projectors for the system stand ~25 feet back form the cylinder and ~15 high (5
feet above the cylinder projection screen) which creates a non normal skew for
the center projector. Also two of the projectors are skewed approximately 45
degrees and 8 feet off center – one in each direction (left and right) to
create the view to the left and right of the airplane cockpit.
Second, on top of the projection issue above, to generate
one 1920x1080 high definition, 40 foot long,
220 degree continuous picture, the visual system was comprised of 4
computers; three image generator systems that generated the 3d images
(displayed by the projectors mentioned above), and one “master” system that
gathered all the geographic information system data (GIS data), converted the
GIS data into 3d data format recognized by image generation systems and then distributed
that 3d data over UDP to the image generation systems. All four systems had to stay in perfect
real-time synchronization and run at 75 frames per-second.
Third, due to the strenuous level of realism required, the
continuous flight and high altitudes, the visual system would some times
display as much as 300 miles of world data.
This required implementing very complex but fast 3d graphics rendering
techniques that have been pioneered by the PHDs at Microsoft, Boeing and