Home      About Us      News      Portfolio      Contact Us     
  Massive Assault
Basic Data
Commissioned By: Virtual Programming Ltd.
Original Developer: Wargaming.net
Windows published by: Multiple publishers, depending on region
Windows published date: 2003
Macintosh published by: Virtual Programming Ltd.
Macintosh published date: 2004
About
Excerpt from the USA press release...

Massive Assault is a fully 3D turn-based strategy game set in a futuristic world of, missiles, mechs, and mayhem. With 26 different land, sea and air units, huge 3D landscapes and 6 different planets on which to battle, Massive Assault is a strategy gamer's dream.

With Massive Assault you can play against the top-notch AI, or with your friends via hot-seat or over the internet. The game combines the best elements of turn-based war gaming with a unique "secret ally" political feature that can disrupt even the best laid battle plan.


Postmortem
After years of doing totally different, non-game related work, this was the first foray back into game development. There was a lot of catching up to do.

At first we were going to use an existing DirectX compatibility layer. As it turned out, it did not have all the necessary parts to run a game with these abilities. This game uses all the latest stuff, including vertex and pixel shaders, which were not available with the software we were going to use.

So we set about the task of writing our own compatibility layer from scratch. We chose this direction for two reasons: we could maintain the code ourselves, adding what is needed; and it would be based on Cocoa, being in line with the "New-Mac" way of doing things. It is the direction Apple wants to go, and as it turned out, we have found it very easy to work with.

In all honesty, it really didn't take that long. Well, not in project terms of time, anyway. As it turned out it was not the DirectX layer that cost us time - it was the vertex shaders. We converted them to use the standard OpenGL ARB vertex programs, in a naive fashion. They worked on the ATI video boards immediately. Unfortunately the NVIDIA video boards were driven crazy by them. Kudos to all at NVIDIA and Apple who helped us figure out what the real problem was. At the time ID Software's Doom III was on the horizon, and was pro-ported to use the same type of vertex and pixel shaders this game did. I commented "Unless you fix this, ID software is going to look at the Macs and laugh." As it turned out, Apple and NVIDIA did their jobs, and six months later there was an OS update to the OpenGL drivers that included a fix for the problems we saw. Somewhere in a readme I think, it mentioned that it fixed problems for Doom III. Did I call it or what!

This was a great experience. The DirectX compatibility layer is working wonderfully - we can now port simple projects in one hour! While this is only good for tutorials and such, it is actually quite useful to us. We make sure additions to the engine work the same as the original PC. We take demonstration programs written for the PC and port them, and fix the engine to make them match. And each successive project has used this layer and improved upon it. This was the best idea we ever had!