Skip to content

Instantly share code, notes, and snippets.

@aniongithub
Created September 7, 2012 13:12
Show Gist options
  • Save aniongithub/3666163 to your computer and use it in GitHub Desktop.
Save aniongithub/3666163 to your computer and use it in GitHub Desktop.
Graffiti: A different approach to cross- platform game development
Game engines today are mostly about providing the maximum graphics performance and customizability, which is in trend with the hardware. Unfortunately, they are also API-like in nature, requiring initialization/calls in a particular sequence and in having to manage their state externally. Creating complex effects also often involves writing/generating a combination of shaders, code and data files – which can often get out of sync or be hard to maintain.Graffiti bucks the trend by providing a simple set of declarative-syntax based open source libraries that are set-up-and-go oriented. Almost all of the data Graffiti needs is designed to be written directly as readable, markup-like C# code (or serialized/deserialized), which makes it robust and type-safe. Core tenets of Graffiti include Quake 3 style shaders, simple key frame based animation and batched rendering. Each module of Graffiti is focused on a handful of tasks, which other pieces leverage.It is also written on top of XNA/MonoGame and its most compatible profile (Reach), which makes it exceedingly cross platform. The goal is to create a truly cross-platform set of game libraries which can help create professional-looking games with far less effort and a different approach, one that is better suited to the increasingly expressive languages available for the .NET/Mono frameworks today.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment