More Development Options!
Since my last post about trying out a bunch of different engines and coding languages, a bunch more options were pointed out to me by various people through the comments and through facebook and twitter, so here's a quick rundown of these things I've never even heard of or considered until last week!
Apparently SFML has a bunch of builds for other programming languages aside from C++. You can grab the C# version and a lot more versions right here. BlendoGames has a pretty nifty write up on using SFML for C# along with Mono for Atom Zombie Smasher. I haven't tried it out for C# yet because I can't even figure out how to get it working with Visual Studio C#... the readme assumes that I know way more than I do.
Allegro is a pretty classic graphics library. I actually tried using Allegro after I experimented with SDL back in 2008. The latest version looks pretty neat, except I am not a big fan of the underscore style formatting of all the Allegro functions. It looks like it's only for C and C++.
Monkey is a language that compiles to virtually every modern device out there, and it also has its own IDE to work with. Apparently Brace Yourself Games is using this for their upcoming title Crypt of the NecroDancer.
I had no idea that StarlingPunk even existed, and I thought I knew everything about all the *Punk interations! Haven't dug into this one yet, but it looks like a rewrite of the underbelly of Flashpunk to make it compatible with Stage3d. Unfortunately it looks like the immediate drawing stuff doesn't work as a result, but there is some support for Rectangles and Circles.
I've heard of BlitzMax before but I actually only knew one person that used it, but now I know two! BlitzMax has its own IDE and the language looks pretty strange to me since it appears to be based off BASIC, but if that's what you're into then maybe BlitzMax is for you.
Someone suggested Iggy to me in the realm of Flash but this appears to be more of a Scaleform type thing where you're designing user interfaces with flash to be imported into a larger scale game project coded with something else. I'm not sure I'd be actually into making a game with this because I don't even use the Flash software to make any of my flash games.
In the wild word of Unity I've been meaning to check out this 2d framework called Futile. It looks like it has a lot of ideas from the Flash world assembled into an easy to use code driven framework to render 2d stuff in Unity. I am going to check this out fully at some point soon, but my up front issue with it is that it is based on flash stuff which I don't use often (stuff like addChild() and all that.) People might be confused since I use FlashPunk, but FlashPunk totally subverts all of the standard flash practices because it operates all inside a single Sprite object.
Corona came up in the discussion as well, but this looks like it's more geared toward app development for Android and iOS and not so much PC, Mac, and Linux games. It would be nice to be able to do some stuff on iOS or Android, but honestly I am not too excited about it, so I'm looking for something that's more focused on desktops if anything.
Don't know much about this one other than that it's running on top of the LOVE runtime, so you'll need that runtime to try the demo out. Zoetrope looks like it's based in Lua, which unfortunately for me means it's out. I know that a lot of people like Lua, but I just got very frustrated with it when using it for Snapshot (I couldn't even use +=, c'mon!)
Even with this list and the list from my last post, there are still way more options out there for making games which is pretty crazy to think about. A lot my issues just seem to come from the fact that I've formed habits based on old, inefficient ways of doing things, specifically immediate drawing. It just makes so much sense to me to call draw functions and have things be copied to the screen in the order in which their functions are called... but most hardware I guess hates this technique, which is why most engines don't seem to even support this type of thing. I just love manipulating bitmapdata in flash and controlling exactly when something is rendered in the code!
I think ultimately I'm going to stick with AS3 and FlashPunk until I finish one more project with it. I will be trying to learn some new stuff on the side at the same time, but so far all of my searches have left me frustrated. FlashDevelop and FlashPunk have spoiled me, and now whenever I try anything I just compare it to those and get easily discouraged when something feels "worse" than the way that FlashPunk does it.
It's difficult to dive into something and give it my all when I'm not sure if what I'm doing is the right decision...
SFML for C#
Apparently SFML has a bunch of builds for other programming languages aside from C++. You can grab the C# version and a lot more versions right here. BlendoGames has a pretty nifty write up on using SFML for C# along with Mono for Atom Zombie Smasher. I haven't tried it out for C# yet because I can't even figure out how to get it working with Visual Studio C#... the readme assumes that I know way more than I do.
Allegro 5
Allegro is a pretty classic graphics library. I actually tried using Allegro after I experimented with SDL back in 2008. The latest version looks pretty neat, except I am not a big fan of the underscore style formatting of all the Allegro functions. It looks like it's only for C and C++.
Monkey
Monkey is a language that compiles to virtually every modern device out there, and it also has its own IDE to work with. Apparently Brace Yourself Games is using this for their upcoming title Crypt of the NecroDancer.
StarlingPunk
I had no idea that StarlingPunk even existed, and I thought I knew everything about all the *Punk interations! Haven't dug into this one yet, but it looks like a rewrite of the underbelly of Flashpunk to make it compatible with Stage3d. Unfortunately it looks like the immediate drawing stuff doesn't work as a result, but there is some support for Rectangles and Circles.
BlitzMax
I've heard of BlitzMax before but I actually only knew one person that used it, but now I know two! BlitzMax has its own IDE and the language looks pretty strange to me since it appears to be based off BASIC, but if that's what you're into then maybe BlitzMax is for you.
Iggy
Someone suggested Iggy to me in the realm of Flash but this appears to be more of a Scaleform type thing where you're designing user interfaces with flash to be imported into a larger scale game project coded with something else. I'm not sure I'd be actually into making a game with this because I don't even use the Flash software to make any of my flash games.
Futile
In the wild word of Unity I've been meaning to check out this 2d framework called Futile. It looks like it has a lot of ideas from the Flash world assembled into an easy to use code driven framework to render 2d stuff in Unity. I am going to check this out fully at some point soon, but my up front issue with it is that it is based on flash stuff which I don't use often (stuff like addChild() and all that.) People might be confused since I use FlashPunk, but FlashPunk totally subverts all of the standard flash practices because it operates all inside a single Sprite object.
Corona
Corona came up in the discussion as well, but this looks like it's more geared toward app development for Android and iOS and not so much PC, Mac, and Linux games. It would be nice to be able to do some stuff on iOS or Android, but honestly I am not too excited about it, so I'm looking for something that's more focused on desktops if anything.
Zoetrope
Don't know much about this one other than that it's running on top of the LOVE runtime, so you'll need that runtime to try the demo out. Zoetrope looks like it's based in Lua, which unfortunately for me means it's out. I know that a lot of people like Lua, but I just got very frustrated with it when using it for Snapshot (I couldn't even use +=, c'mon!)
Closing Thoughts
Even with this list and the list from my last post, there are still way more options out there for making games which is pretty crazy to think about. A lot my issues just seem to come from the fact that I've formed habits based on old, inefficient ways of doing things, specifically immediate drawing. It just makes so much sense to me to call draw functions and have things be copied to the screen in the order in which their functions are called... but most hardware I guess hates this technique, which is why most engines don't seem to even support this type of thing. I just love manipulating bitmapdata in flash and controlling exactly when something is rendered in the code!
I think ultimately I'm going to stick with AS3 and FlashPunk until I finish one more project with it. I will be trying to learn some new stuff on the side at the same time, but so far all of my searches have left me frustrated. FlashDevelop and FlashPunk have spoiled me, and now whenever I try anything I just compare it to those and get easily discouraged when something feels "worse" than the way that FlashPunk does it.
It's difficult to dive into something and give it my all when I'm not sure if what I'm doing is the right decision...
Comments
Loom: http://theengine.co/loom
PC, Mac, Android and iOS targets. It uses a AS3 like language called Loomscript. They were giving away free licenses a couple of months ago, maybe you can still get one if you're interested.
Moai: http://getmoai.com/
PC, Mac, Linux, Android, iOS and Web (via Chrome NaCl) targets. Uses Lua though so probably not to your liking. It also looks like a complex API but there are a few higher level frameworks built on top of it.
Polycode: http://polycode.org/
Still in beta. PC, Mac, Linux, (future iOS and Android) targets. Code with C++ or Lua.
Moai is new to me. And also I'm an ass for forgetting Polycode, it's being made by a friend of mine!
PlayScript
https://github.com/playscript/playscript-mono
It uses mono (renders with OpenGL) and blends ActionScript with C#.
In fact, you can program in AS3, C# or PlayScript, and you can even mix them.
The PlayScript language is fantastic. ActionScript style, C# power.
And is open source!
https://twitter.com/ChevyRay/status/329028653134540801
If I'm not mistaken, it's built over Stage3D (Starling)...
Post your comment!