Intel sponsors gamedev.net search:   
Metaphorical Journeys of HappenstanceBy Ravuya      
Great Games Experiment

Wednesday, December 27, 2006
So Seasonal Gift Giving Day has come and gone, and left in its wake utter and total destruction. Homes are ruined for miles in each direction and feral children walk the streets moaning "Wii. Wii. Wii. Wii." in quest for their electronics devices. As long as I can survive against their ravenous attacks, I will post about my struggles with independent game development.

Novarunner

Some pretty big improvements; I now have stuff bubbling up through the main loop and onto my screen (starfield) and will be putting the skybox and other models back in soon. After that, it's hooking the controls up to a player, and then locking the camera to that player to get back in the game. I'm confident that I'll have something really nice by the end of the week.

I've also added a bunch of flavour text to the game in preparation for using them on the loading screens, one of the things I really loved about Bioware games.

Here is a screenshot showing off the star field and temporary hud (sort of):
After I get models rendering properly again, I should probably start working on my AI state modification/utility functions (rotateTowards, flyTowards, etc) and perhaps do some more YouTube videos and a Windows prototype.

Propane Injector

I've started laying out the "new" class diagram, and starting to rewrite the shader classes so that they make a lot more sense. One of the things I'm most excited about, again, is the material system -- no longer will I have issues where I accidentally leave the texture unit off and then go on to create inaccurate renderings full of pain and misery. Taking intelligence out of the development process is awesome.

I'm also working on getting the new PI up and running with Mono; I'll probably write a guide for using Mono on Linux and OS X, although redistributing OS X Mono applications kind of sucks right now because of the dependency on X11 and many third-party dynamic libraries, which are hard to make bundle-portable.

Comments: 0 - Leave a Comment

Link



Friday, December 22, 2006
So I missed yesterday for talking about Novarunner, so I suspect you're all waiting for some new content. No screenshots, though, because I'm still fiddling with the message passing mechanisms and making sure everything is getting called in turn before implementing a lot of my stubs.

However, I do expect to get it up and running again, although probably all you'll see are the same screenshots as before, maybe with a sphere map or two added onto the other ships. I'm busy at the moment trying to convert the model rendering from dumb immediate-mode triangle rendering into an optimized form (using vertex lists or display lists).

I've also been working on my renderer; it wraps OpenGL quite well and provides some nice utilities for managing vertex buffer objects (falls back to display lists if they can't be provided) as well as the active matrix.

I'm probably going to start working on a simple example game for Propane Injector so I can show off to people how it works; the howto documentation that's there isn't exactly enlightening, and the Doxygen is a few months out of date at least. No idea what that game will be yet, but I'm sure I can work up some fan service.

Also, check out the Great Games Experiment. Glow is getting some not-bad exposure, and it's really fun poking around looking at other people's profiles, joining random groups and downloading games. I'll probably add Freezer 2 and CSRPG 2, but the rest of my game catalogue really isn't that great -- I should really get busting ass and write something smaller and quicker.

Finally, some Propane Injector news: I'm going to version 1.0, as I'm sure I've said before. It's going to add a ton of code and examples and improve the documentation. I hope someone will take it upon themselves to write a small game to use for propaganda purposes. Hint hint.

Comments: 5 - Leave a Comment

Link



Thursday, December 21, 2006
Feels good to be done my exams. Real good.

I'll probably post more about the progress of Novarunner in the morning. I've been busy hacking up the flow of data from place to place, and must remember to actually hook the game up at some point and get it running with graphics again.

Important capsule improvements since last entry:
  • Materials system. I added it to Propane Injector and then backported it to the game, so materials are in there and running (currently, basic texture, dot3 bump map, sphere map are usable).
  • Actors improvement. Meshes no longer contain any knowledge about their positioning, scaling, or rotation, and this data is all handled by the actor's view, which communicates with the renderer for the API-specifics. Should make it easier to batch geometry and deal with any problems that arise, though I have taken an indirection hit.
  • Messages. Input messages as well as global messages are properly communicated through the various queues to the top-level and player actors.
    • I must remember to check the global messages to ensure they are getting treated properly, but the 'quit' message seems to bubble up well.
  • Game modes are getting triggered properly, and are called directly. The Story Mode game mode is stubbed out.


Comments: 0 - Leave a Comment

Link



Sunday, December 17, 2006
I travelled many miles to inform you of this story. Look out!

Nobody said I had class.

So I have one final exam to go and then I'm free for the non-denominational winter holiday break.

I got second place in the graphics class for my ray-tracer, and would probably have gotten higher if I had bothered making my demo scene nicer.

Novarunner

I'm planning on actually getting Novarunner properly built so I can compile it again, and then spending a lot of time making a decent demo. Expect one very early in the new year.

Right now, it's broken because a lot of functions are missing (initialization, game main loop, etc). But once I get a chance to stub those out and connect them back together again, the game should start running properly and I'll be on my way to producing a proper game as opposed to the 1000+ line, single-file monster I was using to prototype things.

One of the things I'm really glad about is the immediate-mode GUI; it's based almost entirely on variable watchers so you don't have to explicitly write any HUD code in your game, just tell the HUD to "watch" a variable and it will figure out the best display method for it. This is probably better than Glow, in which I was setting flags all over to control the HUD code from the game code.

Propane Injector

I want to do a "proper" Propane Injector 1.0 release in the new year, so I've planned to release v1.0 near the end of January. Check out my roadmap here -- it'll become a much more fully featured game API as opposed to a bunch of semi-useful code thrown together because it looks like it's useful.

It'll have a bunch of examples (subdivision, mega demo, materials and shaders, and possibly an example game or two) and much better documentation on using the code under Windows and OS X. Right now I'm working on the materials demo, because I don't think the dot3 bump mapping code in Propane::Material::DOT3BumpMapTexture is working 100%.

Mono.Xna

I joined up with the Mono.Xna project under Rob Loach, and have already submitted a few patches here and there to help out with the stubbing process. Please follow our Todo page to see how far our class stubbing has proceeded, and how close we are to properly implementing the "Simple Example" from the XNA framework.

I'm learning a lot of C# during this project, and also quite a bit of knowledge about how XNA works to develop games with, which is almost definitely going into PI later on. Plus, I get more games for the Mac. Can't lose.

Stick Soldiers 3

Yes, it's still going on. We're making good advancements: Andrew has committed a new version of the level editor, and Cow is almost done with XML classes.

I'm going to be working on getting players running around, jumping, and shooting each other. The fun shit.

Thanks for reading this (unbelievably long, screenshot devoid) entry. I promise the next one will carry much more interesting news for YOU.

Comments: 1 - Leave a Comment

Link



Friday, December 8, 2006
Here's Ravuya, to save you from the drudgery of your daily existence. All hail the Ravuya.

Novarunner

I write code. Not lots of code, since I have exams, but enough to get by. I've been working on the controller classes and my SWIG bindings for Lua. I really need to learn SWIG-script much better, because it seems to be unbelievably powerful although it generates this terrible, STL-internals-looking code and I don't like 'buying' code from outside, particularly when it's particularly procedural, which this certainly is.

Right now I'm debating how to implement item types; obviously I have several types of items (weapon slot, armour slot, power slot, shield slot, engine slot, resource/commodity, generic cargo). In Glow I just implemented methods like isWeapon() and then used that to figure out what happened when you right clicked the item (normally the Item would use its use() method, but Weapons override the use() method to shoot a bullet, so right clicking them really equips them). That was pretty messy, so I'm sort of wondering if there's a better way to explain "slot types" and the like without having to make a big mess.

In any event, progress is still going forward and I expect to get lots done after my exam; expect a demo or something so you can jump between systems, or at least a Youtube video post.

Other Gamedev Work

I'm working on a Quake3 level loader & renderer for Propane Injector, because the format seems very easy to work with. I don't think the latest version of GtkRadiant works properly on Intel OS X, but nonetheless I may just use Quake3 for my map format instead of my TWERP XML format.

School work

I finished my raytracer, and lots of people in the lecture liked it. Once I get my grade, I'll slap up some hot source so you guys can take a poke at it; there's a lot of little bugs I made.

Anyway, here's a screenshot from it (showing off my crappy MD2 loader and buggy surface normals): Clicky (640x480). Here's something that looks WAY better: unfiltered sphere textures.

I wish I didn't have so many assignments, otherwise the raytracer absolutely would have had proper shadows, vertex normals for triangles, texture filtration and anti-aliasing.

I've got two big assignments due today, so more later tonight after they're done.

Link of the Day


Pencil Art


Comments: 2 - Leave a Comment

Link



Sunday, December 3, 2006

Novarunner

Advancements are being made. What am I up to?
  1. Hooking up Lua to the engine internals; it's harder than it sounds. I think I'm doing it wrong.
  2. Preparing a bunch of controller-level classes to take care of my domain level objects. It's also a lot of work, but once I get it ready workflow should be easier.
  3. Starting on celestial body rendering. I should have some pretty pictures later but right now it's glutSolidSphere all the way.
  4. System saving and ship population.
  5. Tearing out my example code and starting with the proper design.
  6. UI and HUD features; the menu will be pretty nice even compared to Glow's, I hope. And it'll support multiple resolutions including 16:10 and 16:9. I'm strongly tempted to run out to the store and pick up a nice Christmas HDTV to test this theory.

Classwork

My raytracing assignment is mostly "done". Once I hand in the assignment with the promo shots, I'll be sure to post the promo shots here so you can all point out the math errors I've made.

There's a lot more assignments to go, so I don't think I'll be sentient until after my finals. Feels good to make updates, though, so I'm sure I'll post about my tiny enhancements during breaks from my final studying periods.

Comments: 0 - Leave a Comment

Link



Friday, December 1, 2006
Reflections do sure make stuff look shiny. It looks like Christmas in the Hellplane. I'm enjoying this assignment a bit too much.
Free Image Hosting at www.ImageShack.us

Comments: 2 - Leave a Comment

Link


All times are ET (US)

Most of this crap is copyright 2004-2009 Ravuya.
 
S
M
T
W
T
F
S
2
4
5
6
7
9
10
11
12
13
14
15
16
18
19
20
23
24
25
26
28
29
30
31

OPTIONS
Track this Journal

 RSS 

ARCHIVES
November, 2009
October, 2009
September, 2009
August, 2009
July, 2009
June, 2009
May, 2009
April, 2009
March, 2009
February, 2009
January, 2009
December, 2008
November, 2008
October, 2008
September, 2008
August, 2008
July, 2008
June, 2008
May, 2008
April, 2008
March, 2008
February, 2008
January, 2008
December, 2007
November, 2007
October, 2007
September, 2007
August, 2007
July, 2007
June, 2007
May, 2007
April, 2007
March, 2007
February, 2007
January, 2007
December, 2006
November, 2006
October, 2006
September, 2006
August, 2006
July, 2006
June, 2006
May, 2006
April, 2006
March, 2006
February, 2006
January, 2006
December, 2005
November, 2005
October, 2005
September, 2005
August, 2005
July, 2005
June, 2005
May, 2005
April, 2005
March, 2005
February, 2005