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.
It seems this month that I’ve spent more time doing non-coding tasks than, well, coding tasks, which has been a little disappointing considering I wanted to progress much faster with the remaining Eihort features than I have. Well, such is life I suppose. One of the things that’s been yanking my proverbial chain lately has been reliability issues with our current dedicated host. Almost 2 years ago now (wow, has it been that long?
I switched the Ogre DNS to ZoneEdit a while ago because I’d been getting some resilience problems with the servers provided by my registrar. I also paid (ZoneEdit is free for the basic service) to have an extra server so that we had 3 DNS servers pointing at ogre3d.org, all in different continents. I thought that would be enough. Today, however, ns2.zoneedit.com ns3.zoneedit.com and ns17.zoneedit.com all went offline at the same time.
Argh. I downloaded and installed VS2005 SP1 yesterday, and all appeared to go well. I performed a bunch of builds yesterday (crucially, all release builds) and all was fine. Today, however, after making a lot of changes for better ANSI compliance and warning fixing, I wanted to test a debug version. And this is where the nightmares started. I now have a seemingly totally random case of debug builds refusing to locate the side-by-side assemblies for the debug C++ runtime library - it moans about a missing MSVCR80D.
I realise this has been reported by a lot of people already, but I had to link it here as a paragon of corporate cynicism. I can’t believe Sony actually thought they’d get away with trying to engineer a viral marketing campaign for the PSP using fake blogs and YouTube postings. They tried to wipe all trace of it from the net after it was exposed but of course someone has posted a copy.