Engine video followup
Thanks to everyone who checked out the video we released last week. We’re really happy to hear the feedback. There’s still a lot more work to do on the visuals, but we felt things were at a stage where it was worth putting a video up on the blog.
There were a few questions that people asked that I wanted to address.
What kind of machine did you record that video on?
We’re on a tight budget, so our development machines aren’t really anything special. They have good CPUs (to help speed up compiling), but the graphics cards are pretty middle of the road. I ran 3D Mark 2006 on my machine to give you an idea of what we’re working with.
Most people asked this question because they are concerned that the game is going to require a high-end machine. We definitely don’t want that; our company’s mission is to unite the world through play, so we want as many people playing our games as possible.
According to Valve’s hardware survey, about 80% to 85% of respondents meet our minimum system requirements currently. Our plan is to deliver a great experience even on the minimum spec machine, so we don’t expect many people to have to upgrade their computer to play Natural Selection 2.
What about bounce lighting?
In the process of building the new rendering system shown in the video, I implemented quite a few different techniques. My early efforts were largely focused on reproducing the bounce lighting effects that you can achieve with an offline radiosity simulation. The shot below shows my implementation of bounce lighting with dynamic lights.
In this scene there is a single spot light. Without bounce lighting the walls and ceiling would be completely black because they don’t fall within the spot light’s cone. However, with the bounce lighting simulation, some of the light is reflected off the "table" and the floor and helps to illuminate the entire room.
This shot is real-time (close to 100 FPS if I remember correctly), but when layered with other effects I found I was spending more time optimizing than my schedule could afford. I also found that in our environments the effects of bounce lighting were very minimal. In the shot above, the bounce light contributes quite a bit because the walls are white, but with darker textures the effect is much more subtle. For example, if the walls were 50% darker, you’d only get about 25% of the effect.
In the interests of time, I dropped the bounce lighting approach in favor of some additional effort on the part of the mappers to achieve nice artistic results. I may return to the bounce lighting approach later if time permits.
This is just graphics, where’s the rest of the game?
This video was just meant to demonstrate some of the lighting effects I’ve been working on recently. While I work on the engine and tools, Charlie is busy writing the game code, so there’s a lot going on other than just what you see in this specific video. There’s also a lot of engine stuff you don’t see in the video too; I’ve written a little bit about the overall engine state before, and you’ll be hearing more in the future.
Thanks to everyone who left us comments.