CD Projekt RED - RED Engine and The Witcher 3
DSO Gaming has an interesting article about the RED Engine, and that it was originally meant to be used in The Witcher 3.
During their SIGGRAPH 2013 talk, CD Projekt RED’s Balazs Torok and Krzysztof Krzyscin unveiled some new interesting information about RED Engine; the engine powering The Witcher 2 and CDPR’s upcoming RPG, The Witcher 3. According to the developers, this engine was originally meant to be used in The Witcher 3 as the game was planned ahead already, however CDPR decided to take advantage of it with The Witcher 2.
RED Engine was developed to render characters beautifully with support to special shaders, rendering, lighting techniques. The engine also supported multiple appearances per entity, texture skinning with 4 weights per vertex and animated component using Havok animation. Moreover, CDPR used 3 levels of LOD for most of its meshes plus an optional billboard level. Surprisingly enough, with The Witcher 2 CDPR ‘LOD-ed’ not just the meshes but the animations and the mimics too
When the team began working on the X360 version of The Witcher 2, it ended up creating a new version of its engine called RED Engine 2. RED Engine 2 is considered a more optimized version of RED Engine, as CDPR was facing a lot of issues with Microsoft’s console:
“When we finished making the PC version of the Witcher 2 we started working on the Xbox 360 version. It was a very special situation where the console version was developed separately from the PC version, this allowed us to concentrate all our efforts. At the very beginning the game didn’t even fit on the 1 GB devkit so we had to optimize a lot and we had a deadline of the GC when we had to run on the 512 MB devkit. The first big win was the motion extraction from the animations, then we rewrote the whole foliage system, these and a few other optimizations finally made it possible to run on the console. We were facing many loading time and CPU issues too. For the former, we had to implement animation streaming, we always load the events, the extracted motion and some key poses for the animations and we stream in the rest and blend them. For the CPU we had to implement a lightweight solution for background NPCs that allowed us to place many simple animated characters on the levels. The triangle count and the textures were reduced by a factor of 2 so there was no special thing done here.”