Programming. Realtime computer graphics. Demoscene. Game development. Stuff.
Master thesis weirdness
Writing thesis at the university is weird, you have to write 50 pages of poo just to present 5 pages of useful information. Introductions, overviews, previous works, aims, hopes, discussions, explanations of unrelated stuff etc.
I have a temptation to put a small picture of some dragon or a naked chick :) somewhere inside just to test if anyone really reads that crap.
Engine/demo sourcecode released
So I went and put the sourcecode of our engine and the current (in progress) demo at BerliOS, so far only the Subversion tree (browse it online here).
The 'engine', called dingus (don't ask me why :)), is the one that was born for LTGameJam2003, based on some previous experience and insights from people more clever than me. Variations of it were used in all 'serious' nesnausk! demos so far, and in my personal projects as well. The sourcetree at BerliOS has no exporters/tools commited in yet, that will be at some later time. Of course, no real documentation is written for the engine.
Besides the engine, there's ic2005 project that's, well, the sourcecode for our WIP demo for ImagineCup2005. No art assets in any form are committed in, sorry :)
At some later time I'll put the sourcecode for our other demos/projects as well. Maybe.
Update: mesh and animation exporters for 3dsMax added to svn. Other tools pending.
We're going into heavy crunch mode to finish our ImagineCup demo on time. The demo alone would be nothing, but when you add up TheRealWork, master's thesis, the demo and some sleep, you quickly run out of hours available during the day. Take one out of that, and it's manageable :)
Anyway. I feel kinda strange about the direction our demos are taking. Much like the game industry, we're going the 'content shoveling' way. Paulius' first 'serious' demo, Demo 612, was low in content amount on purpose. Our other demo, The Fly, already had some content; programming part was already the minor one.
In this demo, I project that we're putting 5x more effort than into 'The Fly', and something like 90% of the total effort goes into art content (models, textures, animations etc.). It would better look good in the end! I once thought that for some reason we 'raised the bar' so much that it's hard for ourselves to jump over it.
This kind of scares me. The overall trend is that with each demo we're doing much more content, while the 'code' part remains pretty constant in size/complexity. What's coming next? Will we need 5 artists working for 5 months just to make a demo?
After this demo, I want to take the usual 2-3 month break; and then try something different. Something more abstract, with more intelligent code and less massive art content. I admire kewlers very much - somehow they are able to make great demos 'out of nothing' :)
A demo that still fascinates me
Been thinking about how we should synchronize the visuals and the music in our demo... So I went and watched some of the classic demos, paying some extra attention at how they do it.
Synchronization aside, the demo that still touches me very deeply is Gerbera by Moppi. It's old (2001) and already starting to show it's age visually, but the whole mood, 'storyline' (whatever that is), the tiny writings and the music is fascinating.
Directions makes us unable to choose our paths. Wonderful.
Animation blending for walk/run
I've done some very basic walk/run animation blending. The results are pretty neat!
We have several walk animation cycles, each for different walk/run speed. Now I can smoothly move the character at any speed, and the right animations are selected, synchronized, mixed; and the walk is mixed in/out of another animations.
As a basis I've taken Tom Forsyth's talk from GameTech2004 and Charles Bloom's rambles (dated 3-13-03). Of course, our case is somewhat simpler (e.g. we don't have manpower to author all turn left/right, accelerate/decelerate, etc. anims).
Try it yourself - it's good! :)
BTW, I was thinking about putting our full engine/tools/whatever somewhere, in case anyone is interested or maybe would find it useful. Well, I know, the naked sourcecode is not useful at all in the real world, but still :)
Geoff Zatkin's essay
A must read article for any game developer wannabe here:
Your industry heroes work like dogs too. Ask a Blizzard employee what their "core" hours were for the last year+ before WoW launched. Or a Bungie employee leading up to Halo shipping. And those are the lucky ones. For every studio that turned out a brilliant game, multiple other teams of equally cool people ended up wasting years of their lives working on games that never saw the light of day, came out stillborn or got pushed out early and died an ignominious screaming bug-filled death.
How sad, and how true...
I once wanted be a games programmer
Some 6-8 years ago I'd think hey, games programming is all I want to do. Right now I'm more on the "let's see" side.
One thing is: I don't really play games. Last time I seriously played a game was, like, 7 years ago (IIRC). Some of the modern games I've see seen or tried a bit are HalfLife2, Doom3, DungeonSiege, GTA3 and... that's all! Wanting to be a game developer when you're not really interested in games would be pretty weird, right?
Right now I'd think that my main interest is (realtime) computer graphics. I know that sounds pretty familiar - everyone starts from doing rendering engine - but hey, I'm still interested in CG now, and my first attempt at it was ~9 years ago, a mosaic-drawing-program on ZX Spectrum...
Would I want to work on a game? It depends. I don't really like the current state of the industry at large; and working on something that's not directly a game (like at IHV, or middleware, or research) would probably be more interesting.
I guess that's why I'm trying not to work fulltime and leave some time for demoscene and similar stuff. Ok, my daughter has got the scissors somehow and now is trying to cut some books. Gotta go :)
Oh no, it's a banana hotel!