In case you haven’t heard, The Witcher 3: The Wild Hunt is a massive game. Spanning multiple continents, the team at CD Projekt Red managed to create a world that seethes with life and danger. Utilizing the deepest integration of SpeedTree for Games that we’ve seen, the team managed to create 200+ (a rough estimate) varieties of plant life to match the different biomes and seasons that Geralt encounters. The design of these forests deftly pulls the player into the game, serving the overall design aesthetic. We spoke with Michał Buczkowski, senior environment artist at CD Projekt Red about how they used SpeedTree to create this vibrant world
On the Diversity of Foliage and Landscapes:
We’ve used around 20 species of large trees and bushes, and from a handful up to over a dozen different models for each species. Apart from that we’ve used 40 grass varieties and upwards of a dozen different types of subaqueous plants. All of that is supplemented with a range of other types of vegetation, including blooming plants, creepers and vines, organic debris, and vegetables – a handful of different models for each. Lootable herbs are a separate subset, numbering around 50 varieties.
In terms of biomes, we’ve depicted low and highland temperate landscapes in their open and half-forested terrain varieties and in two different versions – winter and non-winter. There are also temperate zone forests, swampland, temperate zone mountainous landscapes, subaqueous environments, cultivated gardens and urban biomes, and last but not least, singular landscapes like deformed forests and other-worldly terrain.
So as you can see, believable variety was a goal we set for ourselves as much as it was a story requirement. I believe we succeeded in fulfilling both.
On managing economy and art direction for their trees:
Based on what we did years ago to create the trees and other vegetation for The Witcher and The Witcher 2, I could estimate the sheer “volumes” involved, that is to say, the number of polygons required for the desired LOD and stipulated overdraw burden. The models were then executed to fulfill these requirements while providing the best possible final in-game quality. But the latter step only became possible once we gained a thorough understanding of SpeedTree, its mechanisms, (and) how it works.
On their approach to using the SpeedTree Modeler:
In our incessant search for improvements, we used the SpeedTree modeler somewhat unusually: namely, to create hi-poly models of tree limbs, and then to render textures onto them. We could then take these hi-poly models and control and adjust parameters like branch thickness or leaf density before re-rendering.
Production times to model each individual tree species varied. For medium-sized and large trees, it took 3-4 days to produce the hi-poly model and any textures it required (leaves, flowers, and the like), the texture of the trunk as a normal-map was another 2 days, then we spent an additional 2-3 days adjusting the model for export into a game asset.
The process was not without its hurdles or difficulties. In the preparation of hi-poly scenes, they included the manner in which we had to distribute elements across the rendered area, the fact that there was no way to save the camera position in the plane, non-perspectival view, and others. Needless to say it required a bit of trickery on our part, which added to the time commitment. But all’s well that ends well, right?
…we used procedural generation for small and mid-sized trees and shrubs. More often than not, we opt for hand-drawing and editing large, landmark trees like oaks and, of course, whenever a hi-poly model was required.
On creating natural feeling worlds:
My assumption from the start was to create a world filled with vegetation that seemed real. The species we selected to accomplish that, when assembled and composed, were to generate the impression of real, believable environments.
That was the crux, that was our focus. And with that in mind, each and every randomly added element stood the chance of destroying that impression of naturalness. This is where the artists who distributed the models across the levels and locations did an absolutely masterful job. Our own in-house concept art and more general reference material (including painted works of art) provided a framework and informed our choices in terms of the type of vegetation (assets) we set out to produce. It was then up to location designers, with their skills and talent, to assemble those into the landscapes you see.