My main goal with this environment was to build a scene that heavily utilized architecture kits and trim sheets. I also wanted the environment to be as efficient without compromising visual quality.
- Maya: For 3D modelling, UV mapping, and asset mesh optimization.
- Unreal Engine: Game engine, used for scene creation and propping, lighting, rendering, blueprinting, etc.
- Zbrush: For sculpting details on High-Poly models and fabric simulation.
- Substance Painter: To texture my assets, and to create and store smart materials for faster and consistent texturing across all assets.
- Substance Designer: To create tileable materials.
- Marmoset Toolbag: To bake my assets, I find the Baking in Marmoset to still be far superior to that of Painter, allowing you to correct any baking artifacts and skew issues in real time. It also bakes much faster and at a higher resolution than Painter.
- Photoshop: Used for some decals, graphic design creation, and fixing small issues with textures.
- Davinci Resolve: Used to edit together videos and add sound.
- Megascans Bridge: I used a few of their free grunge decals to add dirt and grime to the scene.
- PureRef: used for collecting and organising reference material.
- Trello: Used to plan, organise, and keep track of the project.
Inspiration & References
I use Pureref to collate images of the type of environment I want to create so in this case many different swimming pools; this helps me later on when planning what assets and textures I want in my scene.
I also collect images that give the particular mood that I want to emulate, these images could be of any space or place as I’m focusing primarily on the lighting, colours, storytelling, and composition.
Next, after collecting enough references, I like to create a Trello board.
I set my Trello board as follows:
- Colour-coded key: This helps to quickly distinguish the cards from one another without having to make more columns.
- To-do column: This is where every card starts.
- In progress column: When production starts on an asset, its card is moved into this column.
- Bugs & Feedback column: When issues are found or feedback is given, a new card is created in this column, a short description of the issue is written and a screenshot is attached to give extra context.
- Completed column: Once a task is finished its card is moved here
All cards start on the right side and slowly move left as progress is made, this is not only satisfying but keeps the project tasks simple and organised. Here is a mockup of what the Trello board might look like:
Blockout & Planning
Next, I move on to the blockout, initially, I focus on the general scale and composition of the scene, I set up a few cameras and throw some basic cubes around until I find something I like.
As you can see in the picture above, I tend to push my meshes a bit further in the blockout stage, creating more of a Mid-Poly mesh that is to scale and based on reference.
I feel this is a good habit to get into as it gives you a good head start on the modelling process.
It’s my opinion that making a rushed blockout mesh that isn’t to scale is often a waste of time as it doesn’t give you an accurate representation of scale and you’re going to have to go back and remake it anyway.
Once I’ve settled on the broad shapes I take some measurements, decide on my scale, and start breaking down the architecture into pieces for a kit.
I first focused on getting the architecture kit geometry finalized before I did anything else, in this case, that includes the walls, floors (ceiling uses the same mesh as the walls), and pool.
After that, I added in the doorways, vents, and ceiling beams as these elements of the kit rely on the earlier pieces for their dimensions. Here are the final textured results of the entire architecture kit.
Consistent Texel density across all your assets is VERY important, the same goes for your lightmap density too, this is something often overlooked in student work and depending on the severity it can ruin the scene and break immersion by making areas appear low-resolution.
For games 10.24 px/unit at 2048×2048, it doesn’t have to be perfect but I would keep it as close as you can for all assets in the scene.
The prop workflow was just a straightforward high-to-low bake. I start by making a mid-poly model that I use for the blockout, once I’m happy with its scale and proportions the model is cleaned up.
From there one version is turned into the high-poly and another the optimized low-poly. The lowpoly is unwrapped and the UVs are packed at 10.24px at 2048 or 5.12px at 1024 depending on the object’s world space size. The bakes are done in marmoset and imported into Substance Painter.
After baking, I texture the assets in Substance Painter, I work procedurally, creating textures as Smart Materials first before later adding manual details.
This allows me to create a library of textures that I can use later on to speed up the texturing process of future assets.
Over time this creates a library of textures that you can pull from and tweak to quickly texture your future assets.
All of the tileable textures in this scene were made by hand by me, I used Substance Designer to create them.
Two tips I can give regarding texture creation are 1) keep the graph as simple, labeled and clean as possible and 2) do it in stages and frequently get it into the engine to test it in situ with the correct lighting.
A lot of the time all you need is a simple texture, don’t do more work than you need to.
Creating trim sheets is an important skill as a game artist, many of the tileable textures in this scene are condensed onto a single texture.
It’s important to test the textures first before you commit. Plan out your trim sheet and check how much room you’ll need for each texture on the sheet.
Here is an early image of when I was planning out a trim sheet, I used the UVs to get accurate sizes for each texture
Vertex Blending & Decals
Vertex blending is a very simple yet incredibly powerful tool that can add a lot of life and detail to your scenes. Again avoid making things take longer than they need to, you can find plenty of short tutorials covering vertex blending on YouTube that will work just fine.
Here’s my setup, to someone unfamiliar with Unreal Engine blueprinting this may look intimidating but it’s just the same cluster of nodes copied three times with the texture inputs changed.
For my scene, I used Vertex Blending to add:
- Damp discolored patches on the walls
- Cracks to the paint
- Exposed plaster underneath
For the decal I used Megascans Bridge, these are fantastic for adding bespoke detail like dirt, leaks and cracks to supplement your vertex blending materials.
Lighting is something that you do gradually bit by bit, for this scene I did several lighting passes as I added more detail to the scene, nothing special here either, just baked lighting.
It is important to check your lighting values against real-life values and to make sure your lightmaps are set up correctly, the rest of it is just about constantly checking references, trial and error and getting proper feedback.
Hopefully, this breakdown helps you in your work, if you have any questions that I didn’t manage to cover here feel free to reach out either over Artstation or Linkedin.
Thanks so much for reading this, and a special thanks to Games Artist for the chance to highlight this piece.