Posts Tagged ‘game programming’


first post in a long while + some erosion progress

March 15, 2009

Well apparently school takes up time.  So it’s been a while.  But here goes:

I got all A’s on my midterms, so fuck YES!  I feel happy about that.  Good times.  I have been spending an increasing amount of time with other people as well.  I know, crazy right?  It’s me.  Apparently some people don’t hate my guts, and I seem to have met some in person.  They are decidedly cool.  Hence that last post about Travis’ birthday.  So, yeah.

What else?  Oh, making progress on the Qix clone, Erosion.  Here you go:

It has a game state machine with GAME OVER and gameplay states and whatnot.  It has much better graphics now, I implemented bloom with my old shader framework and improved the color scheme.  You can die, and I’ve even got gamepad working with rumble on collisions and all.  You will also notice that I replaced the simple bouncing bar with a bar with a thruster in a damped system that actually semi-tries to follow you.  Enjoy this clip:


more freedom in font rendering / cool menus

September 13, 2008

I’m rewriting the font and text code to do the following:

  • No more display lists; render on-the-fly.
  • Instead store glyph metrics to use for draw functions.
  • Add some drawing effects, as enabled by this new on-the-fly freedom.

I’ll post some screenshots of this when I have (a) fancy draw modes for fonts and (b) the menu in place.

The menu itself is quite impressive looking.  It’s not finished yet, but did you ever play Metroid Prime Echoes (the second one)?  Well, it’s a lot like those hub menus.  I don’t care if it’s not original, what are they going to do, sue me?  That’s not intellectual property.  Those things are hella coolz0rz.  I can’t beleive I said that.  KTHXBYE!


omfg openal is t3h r0xx0rz

September 12, 2008

So, I obviously want audio in this project.  I looked no further than OpenAL, where I said ‘yay!’ in a peircing girlie shreik.  It was quite unorthodox for me, and have to say it was rather embarrasing.  Anyway, it’s a beautiful API, modeled much like the OpenGL API.  This is what I will be using for audio.  For sound samples themselves I’m thinking of going with either OGG vorbis or FLAC.  I know FLAC is lossless but I don’t know how much bigger it is if at all.  I’ll be doing tests.  Either way, OpenAL is my output solution.

Also, I’ve given some thought as to what this game should feel like.  Remember how fl0w looked?  That’s the kind of look I’m going for.  Clean lines, deep blues, etherial glowie times.

More later.  For now, I’m working on audio.  The visuals will require almost no textures, as they will be primitive based, aside from the fonts of course, which I’ve taken care of.  The etherial glow later wil be give by two possible methods:  for non-shader people, we will render to a texture smaller than the screen resolution, and then add blend it in at an alpha of about 0.2.  I’ve done this before.  For GPU program graphics types, we’ll simply do a fragment program that blooms the line graphics.  Or, you can just turn it off.  THIS IS THE PLAN.  Hoo-hah.

Back to work for me.


floculate continued, freetype blues

September 11, 2008

So, I’m still working on the codebase for this Floculate game.  Here’s what I’ve done so far:

  • Wrote a new video code base.  It has one API in a header file, and it compiles a different C file depending on the platform you’re compiling on.  This is done by having system.c include either system.linux.c or system.win32.c depending on platform defines.  system.win32.c is empty right now, because I’m still working on the GNU/Linux platform.  When I finish the platform specifics and rendering fundementals I’ll do the Win32 version.
  • Took the physics engine source dir and copied it over to the Floculate source dir, and then did a make reference to the rat_physics makefile of choice, followed by copying a temp file of librat_physics_double.a.  Double is the precision of the real type it’s compiled with.

Here’s what I’m working on now… freetype font rendering in OpenGL.  I want to make my own font engine so that it’s in C and only as big as it has to be.  Problem is, I have no idea where to start.  I know what I want to do, and how to do the second part.  Basically it goes like this:

  1. Use FreeType to render the desired glyphs to pixmap surfaces.
  2. Create a texture and metric datum for each glyph.
  3. Display them as textured quads given text input / special effects.

So I can create textures from pixmaps and display them as textured quads.  What I DON’T know how to do is render the font.  If anyone out there has some advice, please come forward.  And please, don’t be all ‘hurr hurr use a redy madee font engin.’  I don’t want to.  But if someone knows of a good example of using freetype to render to pixmaps, then making textures from that, great.  I’ll keep posting on this until we’re all resolved.

On a random tangent: listen to Under The Weeping Moon.  It’s an awesome song.


floculate sounds like copulate

September 9, 2008

You know it’s true.  What it actually means is for like soils to coalesce.  It’s a term used by those plant studying people.  But it is also the title of a new side project to test my physics engine as an independent library (as opposed to part of Rampancy Engine.)  That is, Floculation.  Basically it will be an action physics based game, taking place in some arena area where the point is to stick all the like items together.  Now this will be 2D, so it won’t take an incredibly long time for this project, but I want it to be fun, stable, and fast.  So I’ll be using OpenGL, RAT Physics, (my physics engine,) and a GNU 99 C implementation.  Because this is an application, I don’t need a highly compatible version of C like pure ANSI or C89.  Windows and Linux will be my target platforms like always.  In the meantime, I have a couple of screenshots of the physics engine’s testbed if you wonder what that looks like.