USA Games News

July 2, 2009


Hello gamers,
Welcome to the July edition of the USA Games News. A lot has been happening on the programming front, and I think we have some late breaking developments that many of you may be interested in.

Genesis 3D

In our previous news letter we mentioned we were testing a cross platform version of the Genesis Engine written in Java. Do to technical details the Java version of the engine ran fairly poor on our testers computers. As a result we have decided to discontinue development of the Java based Genesis Engine, and have made the decision to completely rewrite the Genesis Engine from scratch in C++. While this is going to be a lot of work it will eventually be worth it in the long run. One of the reasons we have decided to make the switch officially to C++ is the fact our future games will no longer be tied to a specific runtime environment like the Java Runtime Environment, .NET Framework, Mono, Python, etc. Instead each version of the Genesis Engine will be specially designed and compiled for each target operating system. This will have serious advantages over the C# .NET and Java based engines. First, since each version of the engine will be designed for the specific operating system and target platform we can take advantage of each operating systems game programming development libraries. On Linux we could use the SDL API, perhaps use OpenAL for 3d audio support, and take advantage of the Gnome-Speech service natively. On Windows we could use DirectX and Sapi. By having the core of the engine specifically designed for the operating system at hand we can take full advantage of its game programming libraries, accessibility services, and so on directly. Second, by compiling the program as a native Windows, Mac, or Linux executable we will be able to get the maximum speed and system performance out of our future games. No matter how much goes into optimizing runtime environments like the .NET Framework, Sun Java Runtime Environment, Python, etc they still have too much over head to compare with a native C++ application. Sometimes some Java and .NET applications are close to native speeds, but they have a long way to go to being equal to a well written native application. Third, by using C++ we will drastically be reducing the size of our software installations. For example, in the passed if an end user needs to upgrade to the .NET Framework 3.5 and include Managed DirectX that means he/she will have to download and install nearly 500 MB of additional software with our games. Not to mention one of our number one technical support issues has been helping end users get those two dependencies installed and running correctly. So we feel the easiest solution will be to eventually drop support for those technologies and use native Windows, Linux, and Mac libraries directly. Fourth, one of the main reasons we have decided to switch is that Microsoft has made things difficult for us to continue using C# .NET for future game development. Back in 2004 when we started developing games Managed DirectX for .NET was brand new, was being heavily promoted, and we decided to begin writing our games using C# 2003 and Managed DirectX. By 2007 Microsoft announced Managed DirectX was being phased out, and they were replacing it with the Managed XNA Framework. Unfortunately, the Managed XNA Framework requires a developer to use an audio tool called XAct that is fairly unaccessible for a blind developer. However, the core C++ XNA libraries don't have this problem. So it only makes sense to design games using C++ which is a more accessible alternative all around. Finally, if we decide to use the SDL sound mixer we will be able to support compressed file types such as mp3or ogg for large background music and ambience loops. Obviously if we can use mp3 and ogg for large files we will be able to make our future games not only smaller, but easier to download and install. Which I think will agree with everyone regardless if they are on dial up access or on a high speed connection. I know it probably seams like we have been going round and round in circles about what programming language, APIs, etc we will be using for the final Genesis release, and in a sense you would be right. It has taken us a long time to experiment with programming languages and APIs to find something that works with Mac, Windows, and Linux equally. At last I think we have done it. Admittedly it is more work than I had planned on, but I think it will be well worth it in the long run.

Mysteries of the Ancients

At long last it appears we are beginning to catch up with our release schedule. Initially we were planning on a June release, but obviously that didn't happen. However, beta 6 has proven itself to be fairly stable, and there weren't many bugs reported. We have fixed those bugs, and are currently developing new levels. Hopefully, time permitting, we should be able to start processing preorders with in the next month or so.

USA Raceway

Believe it or not we haven't forgotten any of you who are eagerly waiting for Raceway. In fact, Raceway has experienced some recent development thanks to Jim Kitchen's Mach 1. When Jim Kitchen released Mach 1 I, like several others, downloaded and tried it with my racing wheel, and loved the experience. Then, the obvious happened. At first, I was going to e-mail Jim Kitchen with a list of suggestions, ideas, and possible improvements for Mach 1. Then, after some time I had a better idea. Why not take my ideas and add them to Raceway instead. One thing lead to the next, and before i knew it i was importing the Raceway source code from my back up drive, and found myself working on the game again. At least on a here and there basis. One of the major changes currently being worked on is I am porting the game from C# to C++. Like the Genesis Engine I fully want to design the game in C++, and research cross platform options for it. In the mean time I am presently doing a straight port from C# to C++, and am using the standard DirectX 8 and 9 libraries that ships with Windows 2000, XP, and Vista. This will allow me to at least port the game, test it, before introducing alternative technologies such as XAudio2, SDL, etc. Needless to say in its current condition Raceway isn't really playable. However, as soon as Mysteries of the Ancients is completed we will be able to speed up development on Raceway. To be honest I'm looking forward to it. While there are plenty of racing games out there there aren't currently any that are like Nascar Thunder. Which is a sighted game I own, and wish was fully accessible. Once Raceway hits the streets I'll get my wish. At any rate there is not a lot to report about Raceway since it isn't currently our main focus. However, I am now more interested in seeing this project through, and am eager to begin seriously working on the game. Since Mysteries of the Ancients is rapidly nearing completion Raceway should enter official development with in the next two or three months. Perhaps earlier.

Gamers mailing list __
If you want to leave the list, send E-mail to
You can make changes or update your subscription via the web, at
All messages are archived and can be searched and read at
If you have any questions or concerns regarding the management of the list,
please send E-mail to

Reply via email to