06-15-2014, 03:06 PM
So, I think it's time I talk about XYG Studio here. What is it? It's a runtime-based game development kit using SDL (with optional OpenGL) for rendering, Squirrel for the scripting language, and a number of other free libraries like NFont for pixel fonts and SPriG for drawing primitives and transforming graphics.
Because it's runtime-based, like Java, games written in it will work on any platform the RE has been ported to without the game itself needing to be recompiled (with the exception of controls and whatnot). The runtime environment will probably be open-source, to help with porting to other systems, but I should be able to put it on all the platforms the IDE will run on myself.
The IDE itself will be written with a mix of GTK and SDL so it can be run on Windows, Mac, Linux and Open Pandora/Pyra. It will feature a very Game Maker-like design, but with some fundamental differences in how resources will be handled and such. Games will also be able to be exported with executables, but the native format will offer a greatly-reduced size, since only user-made code and resources will need to be included.
Rather than have a bunch of built-in variables and automatically-run functions that are impossible to fully bypass without creating junk data/overhead, I plan to make as much built-in stuff as possible able to be removed. Even the most basic program flow can be altered using the main start, loop, and end scripts. I also plan to address and solve Game Maker's other inefficiencies as well and try to make this as fast and versatile as possible.
I may or may not make it open-source; I'm not sure yet, but either way, it will definitely be free, with funding coming in through donations.
Currently, I have graphics loading, keyboard input, line hit detection, a VERY versatile point class, and a sprite class that can transform/flip/rotate. I know sound is a pretty basic feature, but I think it's also pretty non-essential at this point, so I'm focusing on the shape collision and script VM before I get on to that. Once the scripting works, I'll release the runtime and a test IDE so people can try it out.