Tag Archives: Game Development

Gorgon v3.1

Gorgon

Well, it’s finally “done”. Version 3.1 of Gorgon is now live on the release page. There have been many changes to Gorgon, particularly with the Editor application. Some of these changes are breaking changes, so if you intend to upgrade from 3.0, be aware you may have to change some of your code. That said, these changes are not severe, so updating should not be difficult.

There were a lot of changes, additions and bugfixes applied to this release and for a brief overview, you can view the commit log summary on the Github release page. To get more detail continue on…

Continue reading

Gorgon Update #10

Gorgon

This is a small update that addresses some bugs regarding state changes that come up in certain edge cases. These can lead to improper states being set, or older states taking precedence over new states.

As usual, the new update can be retrieved from the GitHub releases page. The latest version at this time is 3.0.88.320. Detailed information about what’s been fixed is available on the commit log for the release.

Gorgon Update #9

Gorgon

This is a small update that contains a few more fixes and additions.

As always, to get the latest version, go to the Github Releases page and download version 3.0.87.290. As always, there is a commit log on the release stating what changes were made.

.NET Core 3.0

Tonight I took some time to look into .NET Core 3.0 and having seen that it’s been finalized, I decided to see how much work it’d be to convert Gorgon to use it. To my surprise it wasn’t too painful at all. I managed to convert Gorgon.Core and Gorgon.Windows and all 5 of the Gorgon.Core examples to .NET Core 3.0 in short order. Of course, those are relatively simple modules with few dependencies, so other modules will probably be more painful as some dependencies may not have .NET Core versions available. That said, everything that uses WinForms from those 2 assemblies worked flawlessly.

I think for the next minor (3.1) release, I may consider jumping over to .NET Core 3.0 completely. Of course, this depends on a number of things like having compatible dependencies, and I still need to investigate whether SharpDX will work with Core 3 (it should). Ideally I’d like to begin updating the code to use .NET Core 3.0 specific features like Span<T> and whatnot. Of course, the biggest thing would finally be being able to use C# 8.0 language features.

For now, this is all an experiment and I will see where I’d like to go with this as time passes.

Gorgon Update #7

Gorgon

This update contains a few more substantial fixes and additions to the library/editor. A new example was added showing how to use the fluent interface on the 2D renderer, and 2 new operations were added to the image editor that will mark the image as using premultiplied alpha, plus an operation that allows the user to assign a discrete value to the alpha channel of an image (this is also available in the Gorgon Imaging API on the IGorgonImageBuffer type as a fluent extension method).

To get the latest version, go to the Github Releases page and download version 3.0.85.244 . As always, there is a commit log on the release stating what changes were made (including many commits for the build pipelines… ugh… so ignore those).

v3.0 Release

Gorgon

So, after about 5 years. Version 3 is done. Well, as done as I’m going to make it. Gorgon is finally released at version 3.0.66.147 and you can download it from the Gorgon GitHub repository on the releases tab.

A lot of work has been done over the last few weeks to finalize this release. Bugs fixed, examples created, documentation updated, etc… One of the new things added was an effect for HDR Bloom (yeah, I know, it can be tacky). And along with this effect, a new example was created to show off a bunch of functionality (including the aforementioned bloom effect) all in one place.

The ever predictable space scene.

Now, I’m sure there’s still a ton of bugs and I’m aware of some performance issues in particular the editor application and saving packed files. Any issues can be filed on the GitHub repository issues tab.

So what’s next? Well, I’ve spent a massive amount of time on this, especially in the last year and I really need a break. So I’ll be stepping away from this for a few weeks. Of course, if there are any bugs I’ll be sure to deal with them. I’ve been checking the issues tab on the repo for years now, I probably won’t be stopping any time soon.

So yeah, there it is. Download it, give it a spin, and let me know what you find.

Cameras

sitelogoIn the 2.x version of Gorgon I wanted to add cameras.  It was most tedious before when you wanted to translate an entire scene by an arbitrary amount.  So when I started this thing, I created an Orthographic camera object.  The previous version of Gorgon used an Orthographic camera internally and this was never exposed to the user.  But in this case, I exposed the camera so that the user can define their own viewing mechanism.

There’s more info and a video inside…

Continue reading

The editor

sitelogoSo I’ve been busy working on building the editor for creating the content for Gorgon.  I know I posted a screenshot of a very old initial version of the editor way back:

Font editor window.

Ugly.

Anyway, I totally scrapped that old thing and restarted.  And here’s a more up to date (but not even close to being done) screen shot:

Not quite as ugly

A little better.

This new editor is going to be a replacement for all the tools in the previous version of Gorgon.  It will handle file management duties (File System Editor in v1.x), sprite editing (Sprite Editor in v1.x) and atlasing (Atlas tool in v1.x).  It will also add font editing.  The big thing about this editor is that it’s entirely plug-in based.  Meaning that the font editor, sprite editor, etc… are/will be DLLs that are loaded/unloaded as needed.  What this means for you:  You can write your own plug-in modules for it.  Want to build a map editor and integrate it with the rest of your content?  With the plug-in system in the editor, you can write your own map editor and host it right in the editor interface (if anything the minimized tedium of having to write UI code is worth it).  Want to write out your content data as encrypted data?  You can extend the file writing functionality to write out encrypted file data.

Unlike the sprite editor in the previous version, the files are no longer saved as loose files on your hard drive that require a separate utility (file system editor) to pack into a single compressed file.  This editor now outputs data as a packed file (of course, this can be modified with a plug-in) so you don’t have to come up with a strategy to update your content, allowing you to edit directly.  This is where it takes over from the file system editor and like the old file system editor this one is capable of importing files by either clicking on an Import menu item, or dragging and dropping directly from explorer.  And, obviously, there’ll be a way to extract the files to your harddrive should you wish to do so.

I have several plans for plug-in modules for the editor including a sprite editor, image editor (a very very very very simple editor, use photoshop or paint.net if you want high detail stuff), a font editor and a shader editor (maybe).

FYI, the window will look like that in Windows 7 as well (i.e. no aero glass).  I’ve modified it to look like the Zune window by including a new object in Gorgon.Common.Dll called ZuneForm.  Basically you inherit this form instead of a System.Windows.Forms.Form and then you get a Zune-looking window.

Look at my balls

So, I’ve been quite busy lately with a new job and such.  And as a consequence I haven’t had any time for Gorgon recently.  But I finally sat down this evening and did a little work (not much mind you, and certainly nothing of note) on Gorgon 2.x.

I’ve uploaded the Ball Demo to the site so people can have a look at it.  I’d appreciate any feedback (please post the feedback to the forums, thank you).

Please note the following before running it:

  1. It’ll probably crash.  It’s in development after all.
  2. You NEED Windows Vista Service Pack 2, or Windows 7 (Windows 8 -might- work, but don’t count on it).
  3. It will run on Direct 3D 9 capable video devices.  However, it requires Direct X 11 be installed on the system (hence the OS requirements).

To run it, just run the BallDemo.exe and pray (oh, and ensure that the zip file isn’t ‘blocked’ by Windows, .NET assemblies hate that shit).  It defaults to windowed mode with a resolution of 1280×800 although you can modify the BallDemo.config file to change to a resolution you like.

Let me know what your performance is like.

Gorgon – 1.1.4529.31450

There’s a new version of Gorgon uploaded.  There’s not a huge amount in this release regarding the actual graphics library, just a few bug fixes.

However, there are two important changes:

  1. The project/solution files for the library source code were converted to Visual Studio 2010.  This means that in order to compile the Gorgon library, you will need Visual Studio 2010.  The library still uses .NET 3.5 SP1, so Visual Studio 2008 will continue to work when using the library assembly.
  2. Most important of all: There’s been a new library added called GSound (Gorgon Sound).  Written by ShadowDust702.  New forums have been added to reflect this new addition.

You can download Gorgon from here.

So, here’s some more proof that I’ve been working on the next version of Gorgon:

https://www.youtube.com/watch?v=GFO6ZMdV2-A

As per the description on the youtubes:

An example showing the new version of Gorgon.

Currently this is just a simple sprite test using 1024 multi-textured sprites via shaders on Direct3D 11 hardware. It also shows a new feature that’s being planned (but not promising anything) to use the 3D stuff to allow perspective corrected sprites.

This video also shows depth for the sprites by walking a camera into the sprite cloud.

Currently getting about 1200 FPS with this (the selective multi-texturing really slows shit down).