Hey everyone!

This Halloween marks the 7 years since the first public release of Natural Selection. Wow - that's longer than the average marriage. This "marriage" has a lot more biting, clawing and struggling than most (or does it?).

As most of you know, we've been planning on releasing NS2 in some playable form this Fall. Back in May, we thought that if the game wasn't done, at least it would be ready to play in an alpha or beta state at the very least. We wish we still thought that was true, but now we realize it isn't happening.

However, before we tell you what we have and haven't done, let us show you the first NS2 screenshots! Click the magnifying glass in the lower right after zooming for the high-res versions:

Squad advance - download

Skulks in vent - download

There is nothing touched-up in these shots. Like editing with our tools, what you see is what you get! We hope you enjoy the style and direction we're going in and these give you little flutters in your belly (excitement, that is). Now onto the more detailed description of the game's status.

What used to be our biggest problem, environment artwork, is no longer a problem. We had a lot of difficulties transitioning from the texture-based levels of NS1 to the much more detailed prop-based levels in current generation games. Matt has done a great job leading the environment art and we now think we'll have enough level textures and models for the first release of maps (based around our "refinery" art set). Our player models (including all the aliens and marines) are done. We're cranking on weapon models and structures and we're right on track with them. Animation remains a large task (we have two animators) but we're bringing on a third animator now so we hope that will reduce the workload there. Our sound effects are going much faster than expected and sound fantastic. We're just starting the score but we expect to have a full soundtrack when we ship.

Engine programming has been going really well, although there's only so much a lone programmer (albeit, a programming genius) can do. So far Max has written about 80% of an entirely new engine and tool set from scratch. That includes the renderer, level editor, cinematic editor (used to make the teaser), Lua Debugger, networking, physics integration, animation system, auto-updater, builder and a whole bunch of smaller programs that tie everything together (not to mention performance and compatibility). Almost all of this is from scratch and it's all designed to run on low end hardware and be cross-platform. It's been really incredible to watch.

The great thing about the pre-orders is that they have allowed us to hire another programmer (although it took some time to find the right person) and he will help tremendously. I imagine there will be some significant relief and stress-reduction for Max to know that not quite everything is resting on his shoulders any more. Pre-orders have also allowed us to put the Heavy/Exoskeleton into the game, which was previously cut. We were also thinking seriously of cutting Dynamic Infestation but luckily we averted that.

Most of the game design is done and all the basic game systems are implemented. We still have more work to do on our particle system, weapon effects, Commander Mode interface and lots of little things like synching animations and sounds and that elusive "feel". It's surprising how even with so many great assets and so much tech, we still have so much to do to make this a great game.

Something that may not be apparent is that while it's been 7 years since the release of NS1, it's been a much shorter time that we've been actively working on NS2. After the 20+ patches (including some doozies), there was a lot of time trying to get this company funded. Max joined at the end of 2006 and that's when things started moving. We got an office and were up to four people in April of 2007 and Cory joined us that summer. It's pretty hard to develop a game without an Art Director, so artistically we've only really been working since then (previous artwork was scrapped). Even then, we didn't have any animators, modelers or level designers. Only in the past few months have we actually had more or less a full team working on the game.

So it's been a long road and a heck of a lot of work, but we know we're on the right track. Halloween is always a special time for us, as it makes us remember back when we launched a gutsy, laggy game called Natural Selection. I know many of you who are reading this played on that night and have supported us through all our ups and downs. If you like what we're doing and still believe in what we're doing, please consider pre-ordering if you haven't yet. We want to make sure we're not saying the same thing next Halloween...

It's good to have you with us.

-The NS2 Team

Other coverage today:

Shacknews interview -

Pre-sales revelations on Gamasutra - Shacknews post - BigDownload interview

Rock, Paper, Shotgun interview - ModDB interview

9lives.be coverage (Flemish) - The Escapist coverage

418 Comments

Two weeks ago we we posted some screen shots of the new marines in Natural Selection 2. We were really happy to hear the overwhelmingly positive response to the new marine design.

There were a lot of comments and questions about the renders we posted, so this week I put together a video to show all of the components that make up the rendering system in our engine.

Here's what you're seeing in the video:

Wireframe – This shows the geometry that make up the objects visible in the scene. Here you see about 100,000 triangles. Each marine has over 13,000 triangles!

Normal Map – In addition to all of the geometric detail in the models, we get even more detail by using a normal map. The normal map causes flat triangles to be lit as if they were actually more complicated surfaces (here's a good explanation from our friends at Wolfire). For our models, we generate the normal maps from incredibly high polygon meshes.

Texture Map – The texture map is a hand painted image that specifies the color of the models.

Specular Map – The specular map is also hand painted and tells the rendering engine how shiny the surface is and what color the reflected light should be. For metals this is typically similar to the surface color. For the skin, we use a blue tint to counteract the warm tones of the texture and give the result cool white highlights. The cloth parts are completely black so that they won't be shiny in the final image.

Gloss Map – The gloss map also helps define the shininess of the surface, but in this case it's how smooth the material is. For a really smooth surface – like a pool ball – the highlights will be very tight, but for rough materials it will be broad. There isn't too much detail in the gloss map because this effect tends to be fairly subtle.

Lighting – To determine how bright each pixel in the final image will be, the rendering engine computes a number of lighting passes. Each pass uses the normal, texture, specular and gloss maps to figure out how much light is reflecting off the surface and entering the camera's lens. Here we're just showing the lighting passes without the influence of the texture map for clarity. Shadow maps are also used to determine which parts of the scene should be in shadow, although not every light casts a shadow for efficiency.

Ambient Occlusion – The rendering engine applies a screen space ambient occlusion technique to add even more shadowing detail. Ambient occlusion is a measure of how much light from the environment is blocked by nearby surfaces. We use a simple approximation to darken the crevasses that aren't handled well by the shadow mapping system. The ambient occlusion is applied as a darkening effect over the final lighting; this isn't physically based, but gives us the results we're after.

Combined – Here the lighting and texture mapping are shown combined. In practice this is actually done during the lighting passes.

Atmosphere – The atmosphere pass simulates the effect of light hitting tiny particles in the air (here's another example). This has become one of the "signature" effects of our rendering and you can see it put to extensive use in our other videos.

Color Grading – Also called color correction, color grading is the process of adjusting the brightness, contrast, color levels, etc. of the final image. This gives a lot of control over the scene that can be difficult or impossible to achieve by tweaking the lighting and texture maps.

We hope you've enjoyed this "under-the-covers" look at our engine. You can also see our rendering engine at work (with motion blur!) in the teaser video we released on the main site.

71 Comments