3D Environment Artist Jeronimo Canale has told us about The Pirates of the Caribbean-inspired The Swamps environment, explained how the scene's modular parts and vegetation were made, and spoke about the material creation process.
Hi! My name is Jeronimo Canale. I am a 3D Environment Artist living in Montevideo, Uruguay, currently working at Voyager 3D. I’ve always been very passionate about movies and video games, so when it came down to deciding which professional career to follow, it was very clear to me what path to take. I ended up pursuing the 3D art industry because of my enthusiasm when Blender tutorials started to become more and more popular.
Studying at Vertex School
Nowadays, most of us have the privilege and the opportunity to study by ourselves, thanks to the vast amount of information there is on the Internet. That’s how I started my studies. But this got very confusing and overwhelming very fast because of not knowing exactly where to start and which tools to use. I realized I needed an organized plan to follow. That’s when I stumbled across Vertex School’s Game Art Program, which offered exactly what I was looking for, a clear path and the tools I needed to learn to get into the game art industry.
The Swamps Project
For my Term 3 capstone project, I knew I wanted to level up my foliage and photogrammetry skills, so one day, while rewatching one of The Pirates of the Caribbean movies, I fell in love with the mood and the set where Tia Dalma’s shack is. That’s when I decided I wanted to create a moody swamp scene.
This process took its time because, in the beginning, I wasn't very happy with how the shapes were looking. So, with the help of my mentor, we brought a screenshot of the scene to Photoshop and tried to simplify the silhouettes so we could focus on the composition and the readability of the shapes.
Creating Modular Parts for the Shack
As for the main building, I knew I wanted an old wooden shack and I wanted it to be built in a modular way. Once I was happy with the bloc out of the shack, I moved into getting it more detailed, and once that was finished, I broke it down into modular assets. The stage of creating the modular assets usually starts earlier in the process, but since I didn't have any concept of the scene from which to break down into clear assets, I had to go with this order of things.
For the texturing of these assets, I decided that to get the best texel density and the most detail, I would have to either create a timesheet or use tileable textures, plus use a second UV channel with RGB dirt masks to get extra environment grunge to the assets. With the RGB mask, I was able to get really cool-looking details with the added benefit of using tileable textures. In the end, I also added some decals for extra attention to detail.
But this shack wouldn’t look as good if it wasn’t accompanied by a good set dressing stage. For this, I made sure to grab as many real-life references as I could find that matched the idea I had in mind. I have to say how much I love this research process of looking for references. Right after this, I started to model and texture them. I really recommend getting some exported textures to the engine as quickly as possible to check how it looks. Sometimes Substance 3D Painter's viewport can be deceiving.
The Photogrammetry Workflow
As I previously mentioned, one of the goals I set for this project was to deepen my photogrammetry skills. So I asked myself, what could I scan that would look good on this project? Some tree trunks were the answer, but not just any tree trunks, Bald Cypress tree trunks, which after doing my swamp research, ended up being the best choice because of how common these types of trees are in these swampy scenes.
If someone reading this would like to know more in-depth information about the process of photo scanning, I would really recommend checking out Grzegorz Baran's YouTube channel, which in my opinion, must be the best informative content about scanning out there.
After the processing, I ended up with three tree trunks and one 4x4m scanned floor. With these, I managed to create a Bald Cypress generator in SpeedTree and one scanned trunk and floor tileable material. The tileable trunk material was very useful to get a nice transition between the procedural trees that were using the scanned trunk as a base and the trunk created inside of SpeedTree. And the scanned floor, once converted into a tileable material, worked as the main material to use on the floor.
Setting Up Vegetation
As for the vegetation, I went all-in with the SpeedTree route because of the great benefits of doing procedural foliage assets. Those benefits are that once you like the result you have, you can randomize it and get instant new and different assets following the art direction you gave the software. This is just perfect to get multiple variations of the same foliage asset to then scatter around your scene.
In my case, I created two graphs for the trees, one with a custom base trunk I could swap between the three scanned ones, and another graph with the whole trunk being generated there in SpeedTree. For the leaves and clusters, I created a very detailed high poly, from which I would then export a top-down view in SpeedTree, to then import into the main graph as simple alpha cards.
Getting as much variation as possible is key here to get the most realistic result out of it. So with the help of the randomizer, I exported multiple clusters, some balder than others, to get a better-looking tree. And with this same workflow, I created some Spanish moss to place on some bigger branches. At the end of this process, I ended up having five trees, four bushes, and three small aquatic plants.
In Substance 3D Designer, I created the painted wood material that I was then going to use as a very simple trimsheet for the main building. This wood material was the base for me to modify and use in most wooden assets, like the stairs and the pier.
When creating this type of realistic surface I really recommend getting a ton of real-life and in-game references. Try to understand the natural patterns it might have. And give yourself a couple of minutes to try and break down how you are going to approach this in the graph editor. It's very useful to start from big shapes to medium shapes to then go into the detail pass. This is something I've always struggled with as an artist because I always would rush the first stage of creating a material or a sculpt and would go straight to the detailing process. This would usually end up being counterproductive, and I would end up with a very bad result because of its lack of fundamentals.
I also used SD to bake the scanned assets and then turn them into a tileable PBR material. This was done with the help of the Make It Tile node and some color equalizers to desaturate and reduce a bit the baked shadows and AO on the Albedo. It's very important to try and get a very desaturated and flat Albedo texture so that the engine can do all the lighting correctly.
Assembling the Final Scene
Once I had the main shack sorted out, I decided to create a small wooden plank kit so I could use them to build the wooden pier and stairs with them. This, with the help of some cool tricks I'll now mention, helped me achieve the amount of detail I wanted. Having the foreground pier assembled, I continued with the export of these grouped planks to Blender to create a second UV channel for this now-merged asset. Once I UVed this group of planks into one UV layout, I moved into SP to bake it and create an RGB dirt mask for extra color and roughness variation.
One thing that I have done a lot on this project is creating multiple material functions. This was great to either enable or disable some functions on the material instances of the props and assets. Having this across all of the assets will help unify all of them into this scene, and make them feel like they belong there. A moss material function on the Z normals worked very nicely to add some storytelling into the assets and with an extra Vertex Paint node, I had the extra possibility to decide where I wanted it to be.
Jake Dunlop and Jacob Claussen were the amazing mentors that guided me throughout this learning experience. Both of them are super talented artists working in the game industry with a lot of years of experience in the field. This last point was with what they were able to help me with in my projects. Their experience led me to avoid mistakes and to better understand the workflows used to create those projects, and when I didn't know how to approach something, they knew multiple ways to make my idea happen, either by sharing resources like articles, YouTube videos, or by simply showing how to do it.
Thanks to both of them, I gained a lot of the artistic eye that sometimes is needed to spot mistakes or to spot when there’s room for a cool potential idea. But to be more specific, blocking out, composition, lighting, shader work, and particle systems and modularity are some of the more technical things I can count that were taught by them.
Vertex has been an eye-opening experience. It gave me not only the fundamentals but the tools I needed to become a professional. I obviously didn't learn only by listening and watching the classes. It is really necessary for us to take action and start to create and make mistakes so that the mentors would know where we were needing some help. I'm still a long way from being as talented as some other amazing artists in the industry, but I feel confident that with the tools and the experience I gained it is only a matter of time, and keep polishing those skills my mentors taught me.