Lessons Learned Building 2D and 3D Games

From the battlefield, to casinos, to hospitals, building graphical learning games

BEVERLY HILLS, CA  (goshrobin.com) 2023/3/8 – When I was a professor teaching Advanced C++ at the Naval Postgraduate School (NPS), I was asked if I’d also be a navy research scientist and program a military training game being developed at NPS for the Department of Defense. Although the word metaverse wasn’t in lexicon yet, I became a member of the team building the first digital twin metaverse ModSAF NPSNET.

ModSAF NPSNET, DoD VR war game on SGI IRIX

ModSAF NPSNET, DoD VR war game on SGI IRIX


My work on ModSAF NPSNET was to create realistic flares, smoke, clouds and other atmospheric effects using C++, OpenGL and Performer. I visited NOAA and brought back their weather models, ancient FORTRAN code, that I integrated with ModSAF to model realistic weather. This was important because the system was being use to rehearse Special Forces for NATO missions, and they choose to operate in darkness and foul weather for stealth.

ModSAF NPSNET had mil-spec 3D models of Abrams tanks, Apache helicopters and a submarine with Tomahawk missiles. It was the first war game to include dismounted infantry, necessary to modeling tank battles realistically to include anti-tank missiles. A networked VR game, we had war fighters playing against each other on the same game while physically at different bases. We created solutions to network latency challenges and to real-time rendering optimization that are still used in 3D game design today.

We had millions of dollars of SGI IRIX graphics computers, that the PC gaming graphics hardware revolution hadn’t happened yet. Building the metaverse, having large scale Virtual Reality (VR), would happen later with better, faster, cheaper computers.

Some people who saw our VR learning game, developed by and for the military, thought it would be great as an entertainment game for children. Kicked off the game genre of Call of Duty and a multi-billion dollar gaming industry. Next, I led design of a navy flight simulator used to test naval aviators. After that, an anti-submarine warfare war game, integrated with navy destroyer sonar displays, to train sonar operators at sea.

Casino poker game, running two copies of mobile game on desktop for testing play

Casino poker game, running two copies of mobile game on desktop for testing play, I am playing as both players

Eventually, I moved from military games to commercial game development. I was asked to load-test a casino poker game. My load-test would determine how many game servers to buy to build-out the casino’s data center. To do that, I would need thousands of simultaneous poker players on the system.

Hiring an army of card players was out the question. I created AI poker players that logged into the system just like human players, and would play poker against other players. My pokerbots would find an open table, sit down and play. They didn’t care if it was other pokerbots or human players at the table. From programming the rules of Texas Hole’em and nightly live game testing, I gained so much poker experience against pokerbots that later I won a Los Angeles poker tournament playing against venture capitalists.

A happy number to get in my poker game server load-test would have been 5,000. That is, 5,000 players simultaneously playing in games on commodity Linux rack servers, as typically found in data centers for serving web pages with Apache. The game server software was intricate and had never been tested with more than a few human players. The initial test missed 5,000. The game server topped out at less than 100. It would need 50 times more servers than budgeted, a financial disaster. Thus began my two-year project that optimized server performance to 10,000+ simultaneous players and also added bingo and lotto games. Applying sometimes multiple daily CI/CD server upgrades, all the while keeping the game server live and compatible with the mobile game client.

I loved building games. However, I felt reservations that games I had built for soldiers to train for war became a popular genre of entertainment games for children. Building games for casinos seemed less than noble. I wanted to build a game that wasn’t guns or gambling.

UN WHO MCARE hospital simulation learning game to train and certify doctors

UN WHO MCARE hospital simulation learning game to train and certify doctors


The United Nations World Health Organization was effected by the worldwide travel restrictions imposed during the COVID-19 pandemic. WHO fielded a team of doctor-trainers who traveled around the world to train local hospitals and to war game with local doctors what to do in a mass casualty disaster. To prepare so that if a black swan event hit, such as an earthquake or plane crash, the hospital could save lives using whatever staff they typically had until additional emergency responders could arrive.

Instead of traveling in person, could WHO medical training be done in Virtual Reality by creating a hospital metaverse? A war game like Call of Duty or ModSAF NPSNET. With 3D digital twins of the world’s 50,000+ hospitals, conceptually like Microsoft Flight Simulator with its digital twins of the world’s actual airports.

As XR Game Producer at the UN WHO, I designed the hospital learning game MCARE and managed the Augmented Reality Group developing it.

About Robin Rowe

Robin Rowe

Robin Rowe, has designed and programmed 2D and 3D games, is a Hollywood creative technologist, engineering director, product designer, AI research lab director, and C++ software architect. Robin has developed consumer, enterprise and safety-critical products including Lenovo ThinkReality Augmented Reality glasses, AT&T DIRECTV Genie satellite set-top box, Econolite Cobalt Linux embedded system DOT traffic controller and Apple Appstore and Google Playstore mobile games.