SDL GDK Plans
13 years ago
General
So! When I haven't been spriting ponies or drawing ponies or writing about ponies or generally thinking about ponies, I've been working on a little code library for C++/SDL to make game making easier... so I can make a game about ponies. -_-
I plan on turning the library into a full-blown IDE (Integrated Development Environment (think Game Maker)) that will be 100% free to use. Since SDL is cross-platform, I'll be able to include support for Mac, Linux, Android and even GameGadget and Ouya. Other platforms will be released as I figure them out. ^^
I plan on making a built-in level and sprite editor using a map format I recently came up with.
About the map format, it works by breaking a room into cells and only rendering one, two or four cells at a time. One cell for games like Zelda that only show one at a time, two for linear side-scrollers, and four for games like Pokemon that need to seamlessly go from one place to another. Not sure on size limitations just yet, but with what I'm using for my game, assuming every single tile is occupied by an actor, and the max size being 16*16 cells, each at 20*15 tiles, it still takes less than a megabyte to store, and at 16*16 pixel tile size, that's a room that stretches 5120*3840 pixels, almost five times the size of a standard laptop screen. And a map that's devoid of actors will be about half a megabyte, so you get a lot for a little. That also means you can play really large areas really quickly since only a fraction is actually rendered. You also don't need to place a block on every tile to fill it in since the block class that comes built in has arguments to determine how many tiles a single block fills.
About the block class, instead of having a solid variable like Game Maker and making anything that touches it get stuck, actors that are programmed to interact with blocks will only behave how YOU proram them to, for instance, you can tell an actor to stay out of them, and when they overlap, they'll automatically move out of the overlapping block until they are completely out of it.
Currently, the collision system supports circles and rectangles. I plan to add support for triangles, ellipses, diamonds and primitives.
The IDE will support exporting the game's entire source code into an organized(?) .cpp file so you can add anything in particular that the IDE may not support. Also, for Android builds, the program handles packing your code into an .apk file that you can stick right on your phone. But since I don't have an iPhone, I don't know how that works, so iOS support will have to wait.
Umm, anything else? Hmm... Oh yes, I'll definitely be looking for anyone with SDL experience or game programming experience in general to help test it. Documentation will also include SDL documentation, tutorials and a C++ ebook for those who need to learn. You see, unlike Game Maker and RPG Maker, which let you make a game with "no programming" (which is a lie, by the way), this project is intended to provide materials to make learning to program easy, while teaching a language that is more widely used than things like GML or Scratch.
OK, I think that's all. Once I get enough done to be able to easily put together a quick game using the library, I will open up for donations which I'll use to purchase hardware such as Dingoo for testing and adding support for.
I plan on turning the library into a full-blown IDE (Integrated Development Environment (think Game Maker)) that will be 100% free to use. Since SDL is cross-platform, I'll be able to include support for Mac, Linux, Android and even GameGadget and Ouya. Other platforms will be released as I figure them out. ^^
I plan on making a built-in level and sprite editor using a map format I recently came up with.
About the map format, it works by breaking a room into cells and only rendering one, two or four cells at a time. One cell for games like Zelda that only show one at a time, two for linear side-scrollers, and four for games like Pokemon that need to seamlessly go from one place to another. Not sure on size limitations just yet, but with what I'm using for my game, assuming every single tile is occupied by an actor, and the max size being 16*16 cells, each at 20*15 tiles, it still takes less than a megabyte to store, and at 16*16 pixel tile size, that's a room that stretches 5120*3840 pixels, almost five times the size of a standard laptop screen. And a map that's devoid of actors will be about half a megabyte, so you get a lot for a little. That also means you can play really large areas really quickly since only a fraction is actually rendered. You also don't need to place a block on every tile to fill it in since the block class that comes built in has arguments to determine how many tiles a single block fills.
About the block class, instead of having a solid variable like Game Maker and making anything that touches it get stuck, actors that are programmed to interact with blocks will only behave how YOU proram them to, for instance, you can tell an actor to stay out of them, and when they overlap, they'll automatically move out of the overlapping block until they are completely out of it.
Currently, the collision system supports circles and rectangles. I plan to add support for triangles, ellipses, diamonds and primitives.
The IDE will support exporting the game's entire source code into an organized(?) .cpp file so you can add anything in particular that the IDE may not support. Also, for Android builds, the program handles packing your code into an .apk file that you can stick right on your phone. But since I don't have an iPhone, I don't know how that works, so iOS support will have to wait.
Umm, anything else? Hmm... Oh yes, I'll definitely be looking for anyone with SDL experience or game programming experience in general to help test it. Documentation will also include SDL documentation, tutorials and a C++ ebook for those who need to learn. You see, unlike Game Maker and RPG Maker, which let you make a game with "no programming" (which is a lie, by the way), this project is intended to provide materials to make learning to program easy, while teaching a language that is more widely used than things like GML or Scratch.
OK, I think that's all. Once I get enough done to be able to easily put together a quick game using the library, I will open up for donations which I'll use to purchase hardware such as Dingoo for testing and adding support for.
FA+

I might make a simple game using your system. I think it could be a fun distraction~ I haven't worked with pixel art enough anyway :>
I'm still using Game Maker but I'm starting to grow out of it. I think my current game will be my last that uses GM. It taught me almost everything about programming I know now, but I find myself ignoring almost everything that's built into it and making my own systems for movement and collision and the like.
When a tile is to be drawn it looks around at the adjacent tiles to figure out what graphics to use, so I can just have a chunk of "solid floor" tile type and not have to give separate tile types to the left edge, the middle, the top, etc.