What is Gorgon?
A modular set of libraries useful for graphics and/or video game development. Gorgon uses Direct 3D (via SharpDX) to provide high performance graphics for your applications.
What’s the licensing?
Gorgon is licensed under the MIT license.
How far along are you? Is it done yet? How about now?
Gorgon 2.0 is currently "done", in that it's got all of the functionality that it was intended to have. The only part that's "incomplete" is the editor, and even that is pretty much done and usable.
What can it do?
Gorgon provides a set of libraries that are capable of handling pretty much any task thrown at it. It includes:
- [Gorgon.Common] Common utility functionality.
- [Gorgon.Common] Plug-in support.
- [Gorgon.FileSystem] A virtual file system that can mount a directory as a file system root, or using various plug-ins, can mount a packed file (e.g. a zip file) as a virtual file system root. This module is based on the popular PhysFS library.
- [Gorgon.Input] A flexible input library to handle joysticks (gamepads), keyboard and mouse input. Using plug-ins the input system can utilize Xbox360 controllers, standard joysticks, raw input from the keyboard and mouse and even via raw HID data. It even includes a plug-in that wraps up windows forms input events. The input library can use events or polling to retrieve data from the various input sources.
- [Gorgon.Graphics] A "low-level" graphics API similar to Direct 3D 11. It improves on Direct 3D by handling some of the more mundane tasks for initializing objects in Direct 3D and provides more extensive error handling for invalid input. This module supports all the bells and whistles that come with Direct 3D 11 such as device feature levels to allow running on older (Direct 3D 10 or better) hardware, pixel, vertex, geometry, hull, domain and compute shader support, etc...
- [Gorgon.Graphics] An extensive bitmap font creation interface (within the graphics module) that supports kerning.
- [Gorgon.Gorgon2D] A 2D renderer that sits on top of the graphics module to make developing 2D games/applications much easier. It provides sprites, drawing primitives (rectangles, lines, ellipses, etc...), drawing of text with the aforementioned fonts, etc...
- [Gorgon.Animation] An animation module that allows the creation of flexible animations for various types of objects.
- [Gorgon.Editor] A flexible content editor to allow for the creation of sprites, fonts, etc... The editor can be extended via plug-ins to edit anything you might want and save as whatever format suits your needs. In fact, all default editing functionality is provided by plug-ins and these can be turned on or off as needed by moving the plug-in DLL in or out of the plug-ins directory.
- .NET 4.5
- Windows Vista SP2, Windows 7, Windows 8, Windows 8.1 or later.
- Microsoft DirectX 11
To compile the library
- Visual C# 2012 or later.
To use the library
- You may use any .NET 4.5 enabled language (e.g. Visual Basic .NET) to write an application with Gorgon.
The master branch contains the most current version of 2.0.
To access the older version (which uses DirectX 9), use the 1.1.4529.31450 branch.
Gorgon uses icons from the Oxygen and Onebit 4 icon sets.
Oxygen icons may be obtained from:
Onebit 4 icons may be obtained from: