Posts Tagged ‘opengl’
Giving it a shot
I’ll be giving a go entering Ludum Dare 48h #21, which will be my first entry ever. (crossing fingers that I’ll actually get something playable done in such a short time)
The tools I’ll be using are: C++ (Eclipse being the IDE of choice) + SDL/OpenGL with my (very) WIP Framework, hopefully it’ll turn out to be usable even tho it is in very very early stage. I’ll have my trustworthy BlitzMax as back-up in case things get too hectic.
And for “art” I’ll be using: GIMP, TuxGuitar and SFXR
Yet another first-timer
Well, let me add myself to the giant list of new folks for the upcoming LD #20. I dropped by the IRC room last night and got some nice advice on useful tools and whatnot… thanks everyone. A snag though! I realized this morning that I’m actually moving that weekend! This might not be as big a deal as it initially seems, though, as I’m only moving to the other side of the same building I’m already in, and I’m already pretty well packed up; it just means some valuable time is going to be eaten up by lugging boxes. I still plan to compete!
I plan on using a SDL-based sprite framework that I’ve been working on lately… right now it’s in an unusable state though (being moved from using SDL blitting to sprites as textures in OpenGL). Assuming it’s fixed in time for the competition, I’ll post the code somewhere for y’all so that I’m within the rules and whatnot.
Uuuhh… yup! Nice to meet you all! Let’s have us some fun!
EDIT: Aaand… that SDL->OpenGL conversion I mentioned? I think I’ gonna abort it and instead move to SFML. I’ve been reading about it some today and it really seems like the way to go. There’re benefits to working with SDL and learning how things like blitting work, of course, but if the API for SFML is as much better than SDL as people are making it seem, it would really speed things up for me… in addition to saving me from having to link in extra libraries for some of the stuff I’m doing. I’m pretty sure this is one of the useful things someone told me about last night on IRC, but I never managed to get around to looking at it at the time because I was too busy playing with bfxr! I should have listened to y’all better! Belated thanks!
Mr Head and the Journey of Discoveries completed
Mr Head and the Journey of Discoveries has been completed. See the entry page.
Windows binaries | Source | Low framerate Timelapse (spoiler warning)
Controls are Arrow Keys and X.
Made in 8 hours, and written in D and uses OpenGL, GLFW and FMod. Sound effects (the few there is) from sfxr.
There was supposed to be some voice “acting” in there, but my microphone was really, really bad, so you managed to escape that. Sadly also lacking music. Would have been great with some light music, I think.
Main sprite is technically an old asset, but to match the last Mr Head game it had to be identical (see Mr Head and the Cow Drowning). I believe my entry is within the spirit of the rules.
A Transportation Industry Game Finished
I actually managed to finish, though I doubted it quite a few times in the last seven hours. There’s almost no end to the list on how many things were cut and it’s unpolished to no end. But still, you can sort of play it and enjoy it.
You can view the submitted entry here.
Also, here’s a new screenshot (included with the entry), showing truck editing.
Looking forward to test all the other games.
Cave Ninja – Tiny Bugfix Version
I’ve released a post compo version of Cave Ninja. Nothing exciting, it just fixes two bugs:
1. Win check for last level corrected.
2. Divide by zero error fixed that occurred for certain OpenGL implementations.
To be honest, for most people there’s no reason to update. But for those that got the divide by zero (might also seem like it just shutdown at once), it might be worth it.
Windows binary (should run fine in Wine).
Cave Ninja – Post Mortem and Stuff
The Good
Fun tech. Not only does some tech idea stuff you want to try out make it fun to actually program the entry, it can also makes the entry interesting. Or so I hope it did. There was two things I tried out: Destructible landscape rendered with marching squares and some sort of fluid simulation.
I’ve wanted to try out destructible terrain with marching squares for some time. Mostly when thinking about doing Blastup 3, though I’m probably more for doing pixel perfect (with alpha) stuff. But still, wanted to try this approach out. It worked pretty OK, though it requires more work to be anyway close perfect. As a note, the collisions just uses bilinear filtering of the nearby grid points and checks it against the threshold, so the marching square output is just for rendering here (which really simplified things).
The fluid simulation pretty much just happened. I had a world which was a grid of values of 0 to 1. There’s a lot you can do with that. I’ve thought about similar things for earlier LDs, for the theme flood, but that theme never won. Basically, it’s like those old water simulations where each pixel is a water particle, and it can either go down or to the sides if there’s room. I just had float values instead, so the whole of it didn’t have to move. Then marching squares on top. Anyway, the lava seems to be what people liked the most, so I’m glad I did it.
The actual game idea. With the destructible terrain etc, I sort of wanted a game in between Worms/Liero and Lemmings. Which I think is what I got. It’s lacking things though (see below). Overall, I think it’s a good game idea.
Once again used the D programming language, which was good and makes most things easy (except in one place where a thing I did in a loop became very slow, which cost me some time). Also used OpenGL, GLFW and Fmod. Stuff that works pretty well and that I’m used to.
The Bad
Time, time. Lack of time. Or too ambitious project, perhaps. I spent 4 hours away from the compo helping some people to move, but I’m not sure those 4 hours would have made a lot of difference. The time issue had most impact on the level design, I feel.
The level design started out sort of OK. I wanted to introduce every new element by itself in a single level, then start combining them and creating puzzles.
Well, to start with, not all elements that I wanted to introduce got introduced. There was only one weapon, there was only one enemy type. I had planned for more there. And I had planned some cool movement tools, like a jetpack (and if I really had had some extra time, a ninja rope).
Anyway, as it were, I did get the elements that existed introduced in the way I wanted (though some levels was a bit too long, making them annoying). But then suddenly I didn’t have time to introduce more elements, yet I didn’t have enough materials or ideas to make good puzzles. So that first lead to a platform/jump level.
Then there was the last level. It got too hard. A little too busy. Even its name gives it away, it was named: A little bit of everything. Basically it had become apparent that it would be the last I had time to do, so wanted it real, if you know what I mean. Nothing tutorially. As a base there was a single good puzzle. But after making it, there was lots of room left, so got another semi-puzzle, some jumping, some digging, and some kill things. Too much. But maybe it suited as being the last level. I can tell you, even I have had trouble completing it sometimes.
That’s not the only bad thing with the last level though. The last level’s win condition check is bugged. So you only actually need to reach the star to win. I realized this bug existed after having gone to bed after just submitting my entry. So I got up, “fixed” it, and re-uploaded (it was within the deadline, don’t worry). Only the next day I realized the check was still bugged. I had added the correct check, but I had also left in a call to the base class update function, which just checked the star. So that was a waste of time.
Graphics. They turned out rather bland and boring. And dark. Noticed today that even just making the game 50% brighter helped a lot. But I’m not good at creating good textures or animate stuff, so perhaps it’s OK given the time available.
The Other
Sounds. It’s thanks to sfxr that I got any sounds at all. All in all, it might have taken 15 minutes to get all the sounds in. It was a great improvement over no sounds, but beyond that it was lacking. In addition, it seems that the sounds cut out for quite a few people — I have no idea why.
Heads up
I really recommend maximize the window to get a look at the whole level (if your screen is big enough). It’ll look bad that the level just cuts off if you have too large a screen, but even then it’s well worth it.
There’s a skip level cheat — it’s pressing F1 and F11 at the same time (as in most of me entries with levels).
I used a bit of base code and some utility code for rendering, fonts, and sound. Not really a library, just some random stuff (it’s what’s available in stdf in the source folder of the package). This is probably bending the rules a little, but I hope you guys are OK with it. Absolutely not game code.
Also, it’s not like I came up with marching squares during the compo. I’ve written a few application using it earlier, and actually adapted some old code. Writing it completely new might have cost me extra 15 minutes or so but it seemed pointless. The idea is really quite simple: For each square in the grid, start making a polygon. Check one corner, if it is within the threshold, make a point. Check this corner against the next corner — if one is out and one is in, find the point in between. Then do the same for the three other corners and edges. And that’s it.
Outro
There were probably some other things worth mentioning too, but none that I can remember now. Think I’ve responded to most stuff that I’ve got comments on as well. Overall, people seems to have liked the game, so I’m pretty happy. It’s been a good LD.
Thoughts on tech for LD15
I spent a hunk of time today hacking myself up a proper library and deciding on what I’ll be using for LD #15, should I not wuss out at the last moment.
I am leaning towards things which I have used for the longest, this is to reduce the amount of figuring-out I have to do.
As tempting as it is to use python/pygame/macos, I have one half the experience with that, so it is best to stick to ancient and familiar technology, despite its limitations.
To implement:
- C/C++, sloppy and mixed. The way I like it!
- 2d vector graphics where possible, otherwise rotated/scaled sprites.
- Win32 (though, I would like to have it compile/run on MacOS as well. This shouldn’t be a huge problem.)
Libraries:
- SDL (sound, graphics, and input)
- OpenGL (strictly 2D and orthographic, unless I drink too many trappists and decide otherwise)
- mmgr.cpp/mmgr.h by Paul Nettle
- vector2d and related math templates by Bill Perone (I can’t seem to find a link right now!)
- MT19937 Mersenne Twister random number generator
To create:
- Photoshop for Graphics
- SFXR for Sound
- SciTE for Text
- Visual C++ 6.0 for Code
- SVN for revision control / backup
To eat:
- Water
- Trappist Beer
- Cola
- Food with nutritional content yet to be determined
Random thoughts:
I have a feeling I may regret my choice to use a gamepad/keyboard for input. But for now I will.
- Con: Mouse games have a lot of instant-appeal. Easier to get interaction “feeling right”
- Pro: Keyboard/gamepad is oldschool and works on consoles.
- Pro: Leaning back in a chair with a gamepad is more relaxing then hunching over a mouse.
I can do sound. SFXR is freaking cool. I spent a few minutes playing with it today and fell in love. This saves me from making corny sound effects into a microphone during the last minutes of the compo! Thank you DrPetter
All of the libraries, save for my starting template are freely available online. None of them resemble a game library / engine, so they are squeaky clean.
At some point I will post my starting source up for anyone interested. Hopefully there is something useful in there to be pilliaged by others during this compo, or future projects.
I’m curious to see what other people are using, or who else is using a similar (fairly heavyweight, rusty, and old) setup.
Something of Doom Something Something Non-entry
Right, so I decided to post this as a non-entry. Reasons include laziness and stuff. Here’s my last progress shot re-used as the ‘final’ shot.
While ‘playing’, press keys 1-3 to build stuff:
- is a tree zapper, it gets you power for nearby trees. It costs 15 power.
- is a mini tower of darkness, it creates darkness nearby. It costs 30 power.
- is an attack tower, it shoots blobs of darkness at the poor butterflies. It costs 50 power.
To goal was supposed to be getting everything dark, sort of. There’s not actually any winning condition, but there’s not much other things either, so that’s all right then.
Don’t resize the window (don’t tell me I didn’t warn you).
Download Something of Doom Something Something (Windows binary, uses OpenGL, should work in wine).
Mr Spider and the Search for Evolutionary Powerups
Here’s my entry. You control a spider that is in dire need of getting more legs. Sort of.
Download
Windows 32-bit binary with D source
Instructions
Collect all powerups to complete level. This will give you a time bonus.
If time runs out or if you fall outside the world, the level ends, but you are left with the score you got for any collected powerups.
Controls
Enter to start game.
Esc to quit (also at level over etc).
Left click/hold to set target. Speed based on distance.
Right click/hold to set target and jump.
Hints
You need to walk slowly to round edges.
You can only sort of jump away from the current surface you are on.
Source
Some source was previously written, but only sort of texture loading, font rendering and some init code.
Uses GLFW, FModEx, sfxr and some other stuff.
Also, note that the title bar is a total lier. The game did not take 32h to make, but 40h. That math is tricky stuff.
(For the framework stuff, the score is read from and written to ‘score.txt’.)
Roads of Dare 1.0 FINAL
Other screenies, time log and the above download here
It’s a board game for 1-3 human players, with AIs taking over the other 1-2 cars depending on how many humans there are. Cars can’t jump over each other, so if there’s no free lanes, you can block the traffic. Different routes are longer than others, and it’s possible to run out of gas.
Everyone plays with the same cards, only shuffled differently. Have fun!
C library functions for LD13
I’m thinking about entering LD13 depending on what the theme turns out to be. I haven’t done a full LD yet, just 2 mini-LD’s. I wanted to use my standard C library functions for OpenGL, Portaudio, Ogg/Vorbis/Vorbisfile, and my GUI. There isn’t any game logic routines or structures as per the rules. It’s a collection of sound, text file, opengl drawing, and string tools for C.
I wasn’t sure what I have to do or if there is some type of time limit, but anyway here is a link to the library code. It’s mostly a conversion of some old SDL stuff I liked to use. I moved away from SDL lately though and have been using GLFW.
PyGL2D
Phew, got it finished
PyGL2D is a simple 2D library for PyGame and PyOpenGL. It’s licensed under the GNU LGPL. See http://pygame.org/project/972/
You can download it here.

ChipmunkLand Compiles & Runs!
I’ve named my “tool” ChipmunkLand!
It can’t load files yet, but it does say “Usage: … filename” if you don’t give it a command line argument. I’m sticking to command line arguments because I’ve never made a usable GUI before. I’m using OpenGL and Glut so I can just use the drawing code from the Chipmunk Demos.
Tower of Doom (final)
Ok. So I’m done! Thanks to timezone, I’m early too.
This has been my first competition, and it’s been a lot of fun.
Download it: http://www.ingeniumdigital.com/ldimg/TowerOfDoom.zip
Readme it: http://www.ingeniumdigital.com/ldimg/readme.txt
With all hope (due to its lack of being tested) it’ll actually work. It’s written in C++ with SFML. I’ve licensed the source under the MIT license. If this is a problem, yell.
Stay tuned for a postmortem and perhaps a less broken build after I sleep.
The Mighty Penguin!
Friday, August 8th, 2008 5:37 amIt would seem that I will be another heretic not using Python. I’m not a fan of scripting languages, so I’ll be using good old C++ with OpenGL
I will be trying to do something in 3d and I’ve prepared myself a small framework using SDL (loading models, loading images, window initialization etc.) Apart from that I will be using only free ( as in freedom
) tools, so no Visual Studio or Photoshop for me. But that’s ok, I always prefered KDevelop and GIMP.
It’s still a couple of hours till the compo. I just can’t wait. It’ll be my first LD actually. I tried to participate in LD10 but due to some circumstances I wasn’t near my computer through the weekend.
I hope I won’t be the only one developing on a Linux powered machine
Good Luck!
Omnihunter: final
I finally settled on a name. Since this game is based on one of my past projects, a roguelike called “The Hunter”, I kept thinking of corny names like “Hunter 2D” for its contiguous 2d coordinate system, and “Hunter 360″ for 360 degrees of freedom. Yuck. Finally I came up with “Omnihunter” for an omni-directional version of The Hunter.
As for the polish I added since my last post, it was mostly a hour worth of minor bug fixes, and I replaced the alligator graphic with a rat because it matches the monsters’ movement pattern better. Here’s what it looks like:
![]()
It’s very… minimal. There’s a lot more I could have done with this game, like adding more types of monsters, give the player a choice of weaponry, make the monsters spawn out of things that the player can destroy, add walls and turn the environment into a labyrinth, add animations… even make the rats spontaneously combust. Overall, though, I’m pleased with how it turned out. It’s nice to see my entire development cycle outlined in my posts, and for my idea to have become a reality in about a day. Plus, I have fun playing my game, and I think other people will too.
According to my posts, it looks like I have spent around 9-10 hours of work on this project over the course of 26 hours. Somehow I think it should have taken me less time than that, seeing as it’s a very simple game, but I finished a project for once, and I have plenty of time to spare. Better that than not finishing in time.
Download the game here: http://www.mediafire.com/?xcmndkznj4n
EDIT: On second thought, there were still a few changes I wanted to make. I’m really cutting it close with only 17 minutes left. Download the updated version here: http://www.mediafire.com/?jdmmi1k5e7y
Dependencies:
- Python
- Pygame
- PyOpenGL
- EDIT: PyOpenGL also requires you to run this file: http://peak.telecommunity.com/dist/ez_setup.py
Tools used:
- Ubuntu
- gedit
- terminal + command line python interpreter
- GIMP
- Audacity Sound Editor
Cubetendo
Sunday, February 24th, 2008 8:57 pmBit of a late entry for me, but oh well, here it is anyway:
Download: cubetendo.zip (Updated with trivial fix for ATI cards)
Windows exe and source code included (compiles in Linux). Requires OpenGL 2.0. If it crashes, try running it from a console (updated the zip with a bat file that does this).
LD 10.5 – Kittay
Sunday, February 24th, 2008 7:08 pmHowdy!
Here is my entry. It’s basically a cross between robotfindskitten and a generic platformer.
DOWNLOAD: http://kittay.ca/kittay-fydo-LD105.zip (1.0 mb)
Written in C, uses OpenGL. Didn’t have time to make a linux binary, sorry team.
I’m planning on doing a post-compo version, with bugfixes and better level graphics. Also, I’ll incorporate the other 3 mini-songs that I recorded, too.
Enjoy!
EDIT: Note that I’ve created a launchpad project for kittay. So you can file bugs there! Yay!











