If you’ve played Ghost Recon: Breakpoint, you’ve likely taken cover within the lush, expansive landscapes of Auroa. Curious about how these high-performing biomes came to be? We reached out to Ubisoft environment artist Pierre Afoumado to get to know more about him and his work.

Pierre has been working as an environment artist for 5 years, specializing in realistic vegetation and working on texture and material creation as well as terrain modeling.

The following article is edited from an interview conducted by Katly Hong.

In-editor screenshot of quinoa field from Ghost Recon: Breakpoint
Quinoa modeled by Pierre Afoumado for Ghost Recon: Breakpoint

Katly Hong (KH): How did you come to specialize in environment art? What drew you to it?

Pierre Afoumado (PA): I always loved creating digital landscapes since I started doing 3D art. I was blown away by The Elder Scrolls IV: Oblivion landscapes back when it came out in 2006, so I always wanted to create my own worlds. Back when I was a teenager, most of my portfolio was already made of landscapes and nature. When I started working in the industry, I was naturally picked up for those skills.

KH: You recently released pre-production images from Ghost Recon: Breakpoint: what changed the most from pre-production to production?

PA: Through pre-production I tried to see how far I could go with realistic vegetation and our engine. Obviously, when we had to consider the gameplay side of things, we had to decrease the density for better and easier navigation; it’s important in a game where you can go everywhere. There is a performance reason of course, but even on very high densities as shown on pre-production screenshots, the engine could handle it quite well; a lot of optimization work has been done on assets from the start.

Image from the pre-production phase of Ghost Recon: Breakpoint
Image from the pre-production phase of Ghost Recon: Breakpoint

KH: How has SpeedTree contributed to your workflow?

PA: SpeedTree is always part of my workflow as soon as I’m involved with vegetation assets. It’s a big time-saver especially because I can start from a base model (like one from SpeedTree’s library) to save time and use the randomization function to quickly create variations. I always use SpeedTree to create high poly clusters I bake later into cards. Basically almost all modeling is done in SpeedTree. In previous projects as well I used it to set up wind, there is a very good integration pipeline with Unreal Engine.

KH: Do you have a favorite environment in Ghost Recon? If so, which one and why?

PA: The ones that involve fern tree assets. They are a very iconic species from New Zealand and they are the ones I pushed the furthest, compared to the other assets. I spent a lot of time pushing every aspect of it, they really are a benchmark of where you can go with the current tools we have.

Cyathea smithii (Commonly known as the soft tree fern)

Breakdown: The Process Behind Ghost Recon’s Foliage

Step one : References

When I have a new vegetation model to do, I start with searching references. I try to be as precise as possible in my search, using the scientific name for example. I end up with a file similar to the one below.

Identifying rules and specific aspects/shapes through these references for a species is a very important step, it will make it as accurate as possible and believable. This applies to every part of a tree, from global shapes to leaves. While I’m doing this I start thinking about how I’ll reproduce that in a 3D model (full geometry/cards, branch hierarchies…).

Step two: Branches

When I start modeling full geometry branches, I always keep in mind the target polycount, LODs, and the player view. Maximum details go near the player (top of the tree will have less details) . Some branches can be just fronds (with or without alpha) to lower the polycount.

I always look at references to see how branches distribute over the trunk, for length, radius, start angle, turbulence, gravity; any aspect is processed depending on the real life references.

I use the same branches for LODs, I just decrease the amount of segments. Deleting branches on further LODs makes your LODs pop and can cause flying leaves.

Step three: Leaves

Something to keep in mind, whether it’s for leaves or branches, is that the focus should be on the global feel of the tree and not on the ability to see clearly all the individual leaves . What I mean is, often, I see over-scaled/overly sparse and one-dimensional leaves in games to make every individual leaf clearly visible. In reality, if you look at a picture or a movie, what you see is spherical packs of leaves, you can distinguish individual leaves only on the edges of the tree. I always create High Poly Clusters in SpeedTree that I later bake into textures for low-poly cards .

To replicate the 3D spherical aspect, I often create 3 shots of the same high-poly branch I’ll use on 3 different cards I’ll cross together.

For low-poly cards, I keep in mind both poly count and overdraw. I pay attention to have little empty space in my cards but without cutting too much. It’s a constant balance between poly count and overdraw. Bigger cards have more cuts than lower ones because they cause more overdraw than the little ones.

Atlases are made in Photoshop to optimize the UV space as much as possible.

For LODs, I don’t scale up or delete leaves with distance to avoid popping and because on lower quality settings (such as for console), we use LOD1 or sometimes LOD2 as first LOD to save performance, so it needs to be consistent. 

To LOD those cards, I just use LOD2 as a base and then add smaller cards to create volume and details. Creating volume is a very important aspect to create a realistic 3D feel.

Step four: Normals

Normals are a very important step, especially with low poly cards. SpeedTree has very useful tools to spherize your normals, such as parent puffiness.

And you need to deactivate the flip backface normal in engine for that case :

About Textures

I don’t have a single pipeline to create textures, it depends on the resources I have. If a scan (from Megascans) matches what I want to do, I take it because it’s a fast and quality option. Otherwise, I search on other image bank platforms, then process the images in Substance Designer or Quixel Suite to delight and create PBR maps. A lot of times it’s a mix of scans, images, and Substance Designer work. In some cases I do a full Substance Designer job. No matter which techniques I use, the result needs to be at the highest level of quality all the time.

What advice would you give to aspiring real-time artists?

PA: First advice I would give is: don’t be afraid to move and leave your town. Depending on what you’re specialized in, the number of job offers might be very limited. Second advice is: focus on a specific set of skills and master it so you can stand out from the crowd, it’s a very competitive environment.

Connect with SpeedTree