RDN Directions

ESP Takes Flight

Microsoft is taking the engine from Flight Simulator and turning it in to a platform for developers.

Michael Cherry, a colleague at Directions on Microsoft, used to say that Microsoft should combine its video game products with its IT wares to produce "Age of Administrators," where the players have to defend their IT infrastructures from marauding viruses and navigate unknown and mysterious management consoles, all while keeping their budget from getting out of hand.

It turns out that Microsoft was listening! It may not be launching "Age of Administrators," but Microsoft is taking the engine from Flight Simulator and turning it in to a platform for developers.

That platform is Microsoft ESP. That's the full name, although one gets the impression it was originally an acronym for something, but the marketers thought it was "cooler" to just go with ESP as the name itself. What's interesting is that ESP contains the core rendering engine of Flight Simulator X -- the most recent version of Microsoft's venerable simulator.


The simulation market is currently very fragmented and full of "one-off" development projects with very little reuse. With ESP, Microsoft hopes to provide a common platform that will let developers build simulations more easily and allow customers to run simulations using standard, off-the-shelf PC hardware. (Note that although "off-the-shelf" means it's probably less expensive than the custom hardware often used for today's simulators, it doesn't mean bargain basement. We're still talking about fast processors, a couple gigabytes of memory and high-end video cards.)

ESP Explained
ESP includes 15GB of physical and cultural data that describe the world, including high-resolution geographic data as well as man-made landmarks, such as buildings and airports. One day, Microsoft might allow developers to choose their own sets of data from the 4TB of data it has amassed over the years with Flight Simulator, but for now they will have to "make do" with the subset selected by Microsoft, although they can augment it with their own data in a variety of industry-standard formats. Developers can tap into ESP using either managed code in the .NET Framework language of their choice, or using good old-fashioned C++.

What's particularly impressive about ESP is the way it can combine real-world physical data with cultural and climate data to produce startlingly immersive real-time simulations. For example, a developer could use ESP to create a simulation that allows a pilot to experience flying an aircraft over a new route, altering the generated scenery to match the desired climate and weather: making the trees appear green in spring, brown in the autumn and barren in the winter. It can even combine cultural data -- adding traffic to the freeways of a simulated city based upon the day of the week or time of day.

In one striking example Microsoft showed me, ESP generated two typical suburban landscapes. In the American version, the streets were laid out in a grid, contained detached single-family homes, and the local park had a baseball field. When the same physical data is used to create a European location, the streets were automatically arranged more haphazardly, contained row houses, and a soccer pitch replaced the local baseball field.

By creating missions, developers control the scope of a simulation by defining a starting point, a series of tasks to be completed and a final destination. An after-mission review helps participants understand their performance and make necessary corrections.

Potent Possibilities
The initial target is organizations already building flight simulation technology, such as defense contractors and others involved in commercial and military aviation who might use it to train pilots or help airlines evaluate possible new flight routes in a variety of weather conditions or even allow engineers to test out new designs for cockpit instruments. But future versions have the potential to dramatically expand the use of simulation.

My son got his driver's license this past year. As a parent, I would pay extra for a driver's education program that gave him real experience in a variety of dangerous situations, such as icy roads or a tire blowout. With a future version of ESP, developers could create those kinds of simulations using relatively inexpensive PC hardware.

What's impressive about ESP ...

Microsoft also intends to expand ESP to address indoor simulations. Warehouse operators could increase safety and lower costs by using simulations to train operators of expensive and dangerous equipment such as industrial forklifts.

ESP is aimed at a specific vertical market and won't have the broad impact of ASP.NET or LINQ, but it makes the previously arcane subject of simulations accessible to many more developers. Besides, unlike all the products that rely on the marketers to try to convince me of their wonderfulness, seeing ESP just spontaneously made me say "Wow." So if ESP is an example of how game technologies can find wider use, bring on "Age of Administrators."

About the Author

Greg DeMichillie analyzes and writes about Microsoft's development platform and tools for Directions on Microsoft, a research firm dedicated to tracking Microsoft. He was previously the group program manager at Microsoft responsible for the overall design and feature set for Visual C# and C++. A founding member of the C# language team, DeMichillie was a key contributor to the initial design and development of .NET.

Reader Comments:

Add Your Comment:

Your Name:(optional)
Your Email:(optional)
Your Location:(optional)
Comment:
Please type the letters/numbers you see above