Well, I’ve been busting a gut trying to get everything sorted for Eihort but it’s still slipping. I spent almost all of last week processing patches that had been queued up for it, and in some cases ended up either rewriting or making significant changes or extensions to them. My current work item is to do with GLSL - whilst I’d already improved things for GLSL recently, what with the unified program definitions and some array work, there are still some issues with supporting auto-bound arrays due to the fact that in GLSL, vertex and fragment programs require linking together before you can grab parameters out of them.
I’ve never liked 3D platform games. Ok, I’ve never properly played the crowning title in this genre, Super Mario 64, so perhaps I can’t really pass judgement - although I might grab it on the Wii virtual console to see. Every 3D platformer I have tried, including the more recent Super Mario Sunshine, have always felt too imprecise, and too subject to variation caused by the positioning of the camera. As I mentioned a while back, the only thing wrong with Psychonauts, which was one of my favorite games of last year, was that it was a 3D platformer at its core.
So, it was finally my own personal Wii-E day today. When I got back from a doctors appointment this morning, the green light on my answering machine blinking excitedly at me, as if it shouting ‘guess what, guess what?’. The local specialist non-chain games shop had let me down with my original pre-order so I’d placed another one with Woolies, where a friend had pre-ordered a couple of weeks after me originally and still got one before xmas, much to my annoyance.
I’ve been watching the new Battlestar Galactica series since it started and whilst it started off a little weak, it has more than made up for it throughout the first two series, ignoring the odd blip where they get away from the main storyline. I had missed the last 3 episodes of season two because of a video recorder breakdown, and hadn’t managed to get them from friends initially - in the end I got them on a home-burned VCD from a friend but initially had problems getting my DVD player to read it.
When it comes to game graphics, I’ve always had something of a mental dichotomy. Despite being obviously really keen on real time graphics (you might have noticed a hint or two to that end over the life of this blog), I’m also a very strong believer that in good games, graphics are far from the most important element. It doesn’t stop me from wanting to make better and better graphical subsystems, because as a graphics geek I love to do it, but at the same time I have my feet firmly on the ground as to the place of these results in the grand scheme of things when it actually comes to enjoyment.
Ok, I’ve ended up slip-sliding into doing more work this week than I was really supposed to. Hmm - I guess I love my work far too much than is healthy. 😉 My excuse (which makes my wife roll her eyes) is that I’ve been picking off stuff that’s not that demanding, and it’s stuff I’ve wanted to add anyway. Well, here’s what you get from today’s commit: unified program definitions.
My wife was in need of a new mobile phone recently due to hers starting to become unreliable so we took a trip into town yesterday to sort one out. We’re both on contract (rather than pay-as-you-go) but they’d expired so we figured we might as well just arrange extended contracts and get new phones at the same time. Mine was getting a bit crusty too - I bought the cheapest tri-band phone there was in a hurry 3 years ago so I could use it on a short-notice trip to the US and haven’t changed it since - so I thought I’d take a look too.
Although it’s still the holidays, I decided to do a bit of tinkering today since there were a few things about the depth shadowmapping that had been bugging me. I’ve still yet to find a totally satisfactory biasing solution - this is of course a common factor in all depth shadowmapping algorithms, but I’d hoped to have some better results than I have, having implemented quite a few options including rendering back faces into the shadow texture instead of front faces, fixed and gradient-based biases, fuzzy depth comparisons, and a choice of either scaled linear or projective space depths.
See that? That was Christmas 2006. Whizzed by again, if you blinked you might have missed it and pondered quizzically where the extra inches around your waist came from. 😀Hope everyone had a good one - I certainly did, filled as it was with food, family and festive gifts. I received a couple of books that might interest the OGRE users out there, namely Modern C++ Design, which looks like it has some great patterns utilising C++ templates in interesting ways in it, and Texturing and Modeling: A Procedural Approach which covers a lot of theory on generating content procedurally which is a subject I’m quite interested in exploring over the next 12 months.
Ok, so the lighting and shadowing enhancements in Eihort are taking me a lot longer than I anticipated, due to a number of factors, including distractions from a number of areas including the OGRE web server, VS2005 SP1 issues, Xmas shopping and the like, but also due to things never being as simple as they should be 😉 Whilst you can see from the screenshot that self-shadowing with texture shadows is clearly working, there are all sorts of aspects that I’ve been considering which are often overlooked in the proof-of-concept demos of these sorts of things.