This is great. Keeping UVs at 90 degrees never occurred to me but it makes so much sense it seems obvious in retrospect
Unless I'm mistaken, this is how Shadow of the Colossus handles the fur on the Colossi
Awesome breakdown Simon!
Dominique Buttiens shared some secrets of his architectural visualization techniques and showed how he set ups intricate interiors in Unreal Engine 4.
You can actually purchase this scene here:
Hi, my name is Dominique Buttiens, I’ve been working as an environment artist for almost 3 years now, currently at Studio Gobo, Brighton, UK. (We just won the ‘Best Place to Work’-Award!)
We’re working on a big Ubisoft title, but I can’t say more yet – I’ve also worked on some mobile and VR titles, and my first shipped AAA+ game was Disney Infinity 3.0 – Star Wars: Rise Against The Empire.
For my personal project I tend to choose subjects and areas of expertise I’m new to and want to explore. Next to that I’ve always been inspired by the works of Clinton Crumpler, he has mastered creating scenes that really have a coherent story and feel to it. I was hoping to make something while secretly hoping he would see it at some point.
So I wanted to try my hand at creating an asset pack, and I wanted to try creating a realtime Archviz scene in Unreal. My main goals were extremely high visual quality but a low geo budget, while ignoring gameplay elements. I thought this would be a good mix for an asset pack for any purpose. All the meshes are optimized, but the textures have high source resolution so they can easily and non-destructively be adjusted depending on the need of the project.
I had the idea for a french bistrot after flipping through an architectural design magazine. I was looking at how some diners focus on design with strong color schemes present and went exploring in town afterwards until I had a rough idea of what I wanted to make.
A tool I love to use for gathering ideas and setting up my reference and mood images is PureRef. It’s flexible and easy to use. I really recommend it for anyone who doesn’t have a dedicated piece of software like it. It’s a free tool and you can start working with it in a matter of minutes!
I use Trello to stay on top of my planning, keep track of extra ideas and manage my progress. It’s a great tool for small teams or individuals and it’s very intuitive with easy access and oversights to lists and cards.
When starting on a scene or environment I like to first set a quality bar for myself, a beautiful corner to define the art direction. Here I kicked off the project with the tile material for the walls and a radiator prop.
From there on out I kept adding ideas to scene, beginning with a single camera shot and expanding from there. I think it’s important with any project to set a quality benchmark early on. I went through numerous iterations before settling on what you can find online now.
I decided to keep all the models quite low in mesh density with the idea of having them be appropriate for any project ranging from VR and AR (Archviz or otherwise), up to rendering out high quality images. That’s also why I chose Unreal 4 as engine.
For the texturing I used a combination of Quixel and Substance. I find both have their strengths, for basic materials the Quixel Suite was great and fast. I could just drop my mesh in and use an ID map to pick the materials from the library as I saw fit. Whenever I wanted to give the textures some more unique details or some extra love I would use Substance Painter to really ‘get in there’.
All the tileable materials we’re done in Substance Designer, with some of the masks or noise patterns from Quixel. (Some of the tileables are sold in the asset pack and seperately as well.)
I used a simple shader for most of the props and textures. It follows the PBR metallic workflow with a few simple additions so users can quickly and easily tweak roughness and colorvalues as they deem fit.
A big tip I’d like to give on materials: use the different channel viewers in engine. You can tell a lot from setting the viewport to roughness map only for example. During the last week of the project I ended up tweaking a lot of small values based on seeing the different materials next to each other in the final scene.
The scene was setup to deliver high quality renders, as such some settings are best lowered depending on how you want to use the assets. To give the users the freedom to use the assets for whatever type of project they desired, I thought it best to make the meshes optimized, but leave the textures at high resolution (4k and 2k). Depending on what the goal is they should probably be lowered in resolution. Luckily most engines allow this in a straight forward way. In UE4 you can scale them down without losing the original source resolution by change this setting in the texture options:
In the scene I have a few glass props, and more than one type of flat glass. Setting up these materials was something I severely underestimated and made me look into the limitations of the engine (an example of a hard to deal with issue was the casting of a readable shadow through the glass shader). I ended up with three master shaders and several instanced setups depending on the asset. The asset pack includes glass options for props with a baked normal and for flat glass without a seperate normal. You can easily tweak the refraction, reflectivity, the level of dirt, color, wheter you want normal or frosted glass and you can include custom alpha’s as well!
The pack contains a number of decals to help breakup you modular setup, the scene demonstrates various uses of these decals. There are various of plaster decals, paint stains, cracks/damage, a set of dust and dirt decals and even a silicon strip. There is something really enjoyable about a good set of decals to finish up a scene. It can take the scene from being an artificial decor to a real-feeling corner of the world.
Some examples below of how it can break up the scene:
Lighting and post processing
It had been a while since I had lighted a scene and it had definitely been ages since I did any lighthing in Unreal. So I wanted to explore setting up the light in UE4 in a way that would similuate what Arch Viz CG artists do. I did some research to how these artists approach their scenes. Most of my inspiration when it came to the light setup came from the works of Koola, luckily for me, he also worked in UE4. I chose to try a rather physically correct setup rather than something like the ‘bounce card’-method. I had a skylight setup with a HDRI map for the general light, this also provided me with some nice indirect lighting and soft AO. To replicate the main sunlight I just used a directional light. So nothing too fancy. In all fairness (and perhaps my opinion,) the main way to get a nice light setup is to experiment, use reference and tweak the hell out of it until it feels right.
Everything in the scene is set to static and has baked lighting. However all the assets and textures were made in a realtime setting. Thanks to the PBR workflow they visually worked out equally in both scenario’s and should in any other setup, that is ofcourse the beauty of working with physically correct materials.
For the post-processing I looked at photography in Arch Viz magazines and decided to not change too much, but rather just push the contrast and the colors (mostly blue :D). A problem I ran into however was the darkness of the shadows in some corners where the ‘natural’ light didn’t seem to really reach. To offset the extremely dark shadows with the rest of the scene I used the post-processing settings to slightly color the shadows in a light blue. It worked like a charm!
Making a nice scene is one thing. Making a scene that consist of props and meshes that can be repurposed for anyone else and their project is a whole other thing. You can’t take shortcuts or cheat certain areas. Every camera angle needs to be good and whoever invests in your assets needs to be able to use the assets in a clean and easy way. This ended up quickly increasing the amount of time spent on the scene.
I think after playing around with the baked lighting in UE4, that there is a lot of room for more experimenting in the future. It has come a long way and seems to keep improving over time.