Focused Games Framework

 

The Focused Games Framework provides the backend for most of my software. It encompasses projects such as Juice, Thrust and Core and is used to unify my coding approach to all platforms I am currently interested in. Thrust is the framework for writing XNA games across the Windows, Xbox 360 and Zune platforms. Juice serves the Windows Desktop Application side of development and contains my current WinForms and WPF controls. Core is nothing more than the shared code between all sub projects, maintained in a centralized way.

Downloads

Current
Old

Thrust

Thrust is a framework developed to be used alongside Microsoft’s XNA platform to develop games. Thrust handles many things for the developer like serializing and deserializing complex objects to and from Xml, advanced state management with asynchronous content management and a the creation of a lightweight user interface. Thrust has been used in games like Tower Defense (no longer available), Domination, Galactic Wars 3, Match ‘Em and will be used in games like xOrbituary, zOrbituary, Gato Muy Splato and more. Here is what the Thrust framework entails.

FocusedGames.Thrust.dll

This library contains all the core functionality that other Thrust libraries might use. This includes font rendering, color packing, asset management, state management and more. The core Thrust library also rewrites the base Game class to handle components in a much more efficient and extendable way.

FocusedGames.Thrust.Gameplay.dll

The Gameplay library maintains functionality related to helping developers write code for exactly that, the gameplay. More information at a later time.

FocusedGames.Thrust.Graphics.dll

The graphics library is a returning part of the framework and comes packed with new 3D graphics functionality including built-in terrain rendering.

FocusedGames.Thrust.GUI.dll

The GUI library has long been the staple of the Thrust library and it is no different in this version. Here the GUI core provides a lightweight and easy to use menu system that “plugs and plays” with asynchronous content management and is useable on all platforms. Making complex menus with custom functionality that intertwine with gameplay states is easier than ever.

FocusedGames.Thrust.ContentPipeline

The newest addition to the Thrust family, the ContentPipeline library focused on delivering an easy mechanism for generating Thrust compatible content files such as map files for the terrain system.

Juice

More info on Juice.

FocusedGames.Juice

Coming soon…

FocusedGames.Juice.Windows.Forms

Coming soon…

Vodka

Vodka is a set of libraries devoted to developing both Software As a Service (SAS) and creating sites with a simple and powerful Content Management System (CMS). Vodka uses WCF, ASP.NET (.NET 3.5), XML and XSL to power much of its functionality.

FocusedGames.Vodka

Coming soon…

FocusedGames.Vodka.Controls

Coming soon…

FocusedGames.Vodka.Services

Coming soon…

Core

As mentioned above, Core is little more than just the global classes and functionality that is common among all the sub frameworks of FGF. One example of this is the xml serialization classes which can be found with the same functionality on Thrust (Windows) and Juice. This is done by referencing the core DLL instead of needing specific DLLs in the sub frameworks. This is not true, however, in the case where certain platforms require the Compact Framework. In this case, common functionality is built into the core DLL of each platform. For instance, any common Core code for Thrust (Zune) can be found in the FocusedGames.Thrust.dll (Zune) assembly.