http://www.bizarreonline.net/index.php?action=fullnews&showcomments=1&id=23
Anyway, there really have been some more interesting developments in the PGR3 world this week. As most of the stuff is still under wraps, I can't give you much. But here's a little sample of one of the lighting effects the guys have been working on recently:
What you're looking at here is a sample of "car ambient and spherical harmonic occlusion". That's just a technical term for "making the cars in our game look cool", and you can read exactly what you're looking at in each shot, in Chad's highlighted section below. The process is as follows: after the car model has been built by the artists and inserted into our game engine, it's the job of the programmers to get everything lit properly and looking realistic. We've built a lighting tool specifically for this purpose.
The lighting tool takes the cars, cities, and other objects in the game, and calculates the strength and intensity of every ray of light as it bounces around the scene. For example, it will become darker under a long bridge, as there is less light to reflect about the place. This works kind of like a ray-tracing renderer, for all you 3d artists out there. All of the objects are run through this lighting tool multiple times before they make their way into the final game, allowing us to get the average of a whole bunch of different lighting tests. More lighting data equals smoother final output. Remember that kids!
Once the lighting data is gathered up in the lighting tool, this is saved and then read in by the game engine to light the scenes accurately and in real time. The following is a bit of techie talk from Chad (one of our programming honcho's), explaining how all of this works:
First off, lets give you a brief run down of how light is calculated. On a very basic level there are two main factors in a lighting equation ambient and diffuse light. The ambient light is the amount of light which is always present in the scene (e.g. if the sun is behind a cloud, or the amount of light in areas of shadow). This is essentially light from the sky. The diffuse lighting adds a directional component, such as the sun, which is added onto the ambient light. Essentially this gives us a minimum and a maximum light level (minimum being the ambient, maximum being the ambient plus the diffuse). How this relates to the pictures is as follows.
In reality, the level of ambient light is not constant. For example, if the sun is behind heavy cloud, then the level of light in the middle of an open field will be greater than that in an alley-way. This is because the buildings either side of the alley-way occlude the sky (i.e. block out some of the light). This ambient occlusion value can be calculated in our lighting tool and stored per-vertex on the models. The first screenshot shows a car wheel with no ambient occlusion (i.e. constant level of ambient light). The second pic shows the same wheel with the intensity of the ambient light from before turned down on a per-pixel basis, depending on the up direction at that pixel (upwards facing pixels are lighter than downward facing ones). Finally, the third picture is the full monty. This one takes into account the ambient occlusion that results from the wheel itself, so the disc and bits behind the spokes have an even lower level of ambient light because the spokes themselves block out light.
So, as a summary, the game works out the lighting on the car (on a per-pixel basis) based on the surrounding environment. Good eh?
Given the painstaking detail, it's fantastic to see a fully lit and rendered screenshot running on the 360 hardware. I'm starting to really appreciate the effort that goes into these games now!
Aside from PGR3, we've got tonnes of other stuff going on in the office. Our "Unannounced" team has been busy as usual working on their top-secret title. I can't wait to tell you guys about this one... but I think I'd be shot before I left the building if I did! As I prefer to keep my body lead-free, this one will have to wait until another update... In the meantime I'm going to be working on a new intranet system for those guys to keep their design documents nice and neat and tidy. See, who said being a web developer wasn't glamorous? Dance
Check back next week for another random set of ramblings!