Spellforce 2 Demons of the Past

Spellforce 2 was released in 2006 and will be 8 years old by april. Nevertheless, the third add-on of the series shipped a month ago. Talk about a long seller!

Of course Iā€™m attached to SF2 because I wrote many parts of its engine back then. This time I was briefly involved to help the developers include my attribute-less normal map algorithm. The original SF2 did not have any normal maps, and therefore none of the original art assets comes with tangent space information. This is an ideal scenario to pimp up the visuals without touching the geometry, simply by making a shader change and adding normal maps. Continue reading ā†’

Followup: Normal Mapping Without Precomputed Tangents

This post is a follow-up to my 2006 ShaderX5 article [4] about normal mapping without a pre-computed tangent basis. In the time since then I have refined this technique with lessons learned in real life. For those unfamiliar with the topic, the motivation was to construct the tangent frame on the fly in the pixel shader, which ironically is the exact opposite of the motivation from [2]:

Since it is not 1997 anymore, doing the tangent space on-the-fly has some potential benefits, such as reduced complexity of asset tools, per-vertex bandwidth and storage, attribute interpolators, transform work for skinned meshes and last but not least, the possibility to apply normal maps to any procedurally generated texture coordinates or non-linear deformations. Continue reading ā†’