Each time XNA People release a new version of XNA Game Studio, I have to perform a massive change in my code to make it compatible with the latest version of the framework, and I decide to change the name of my little game engine. So what I used to call RedBulb has became XNA 4.0 compatible, and is cleaner than ever, and from now on It’s going to be called “Neat”.

Read on to learn more about it and it’s cool new features…

I’ve made a massive change in the engine’s structure to make it more understandable and cleaner. For example, classes like Console and TrackHUD are now derived from XNA’s GameComponent and are treated like a game component. “GameParts” are renamed to “Screens” and “FormObjects” are now known as “Controls”.

On the other hand, Built-in menus are greatly improved, Controls can be easily altered from the console and scripts, there’s a Physics Simulator on the way and things got way more fun.

I’ve decided to disable all of the networking features because they are useless in practice; because XNA Redist Package does not support network code written with GamerServices and LIVE and games using this feature give a runtime error upon startup.

So to sum up the features, here’s a quick and dirty list of features available in the current version:

Components

TrackHUD

A game component that shows information about the song being played by XNA’s MediaPlayer

NetworkHUD [Development is on hold, feature is disabled in the current version]

Shows gamer’s information in the corner of the screen

Console

A highly customizable game console with the following key features: - Customizable Font, Background Image / Animation, Background and Foreground Colors and Size - Built-in commands with the ability to control many aspects of the game engine like: - Changing Resolution and Full Screen mode (g_res, g_fullscreen) - Changing Game’s Update speed (e_framerate) - Loading Content Files (load) - Activating Game Screens (e_show) - Controlling MediaPlayer, Playing user’s media library and playing sound effects (a_sfx, a_mediaplay, …) - Modifying GUI Controls - Creating / Joining a network session [network features are disabled in the current version] - Console Variables - Customizable Commands - Batch Files (Scripts) - Color name / value parser

Pretty and extremely easy to use Menu system with the following built-in fully functional menus:

GUI

Flexible controls with the following features:

Content Management

Shader Effects, Fonts, SoundEffects, Textures and Videos can be easily loaded and accessed using the structured content management system in this Game Engine

Graphics

System

Mathematics

Network

(via GamerServices a.k.a. LIVE) [Windows version’s network support is disabled]

I’ll get back to making the code compatible with Windows Phone 7 devices as soon as I learn that these devices are really going to last and be used. I’ve had a bad experience with a zune and We’ve all seen kins; So for now I’ll just stick with the Windows version because I don’t want to waste my time.

Neat is an open source project. You can browse and download the code from it’s Codeplex page at http://neat.codeplex.com