I have being working in the AAA industry for tha last 3 years and the crunch is what is forcing me to find something else to do in life even if I love 3d. Some places may be more respectful with their employees but in my experience the crunch is even calculated in advance cause they know the workers will accept that. Some people is very passionate and don´t mind to do it and that is fine but a lot of people have families and they want to build a healthy environment with them or other goals outside the working ours. Not to mention non-payed overtime and other abuses I faced. Hope this industry fixs this problem.
Those tilesets are sexy. Seeing new tilesets is like getting introduced to a new lego set.
Alex Dracott has an incredible background in game development. He worked at Sony Online Entertainment (Planetside 2), created environments for Infamous: Second Son & Infamous: First Light and right now he’s working with Highwire Games. For a long time he’s been experimenting with Unreal Engine. Today we present you with an incredibly detailed breakdown of the Offworld scene from Alex.
Introduction Alex Dracott
My name is Alex Dracott. I’m originally from Portland, Oregon but currently I live in Seattle, Washington. I started my career as an intern for Sony Online Entertainment (now Daybreak Games) and got my first fulltime job working on Planetside 2 as an environment artist. Since then I’ve had the pleasure of working for Sucker Punch Productions on Infamous: Second Son and First Light as well as a few other fun contract jobs. Currently I’m working for Highwire Games on their recently announced Golem for PSVR.
While I started creating environments, most of my current work is in on the visual side of the technical art spectrum. I’ve worked on VFX, material and shader creation, look development, and lighting. I really enjoy the challenge of using technically complex processes to create visually compelling art and content.
My Offworld lighting study was my most recent practice project in UE4. I started doing them earlier last year usually with something specific in mind. Sometimes foliage and nature lighting, other times, super realistic interior lighting or a type of particle effect.
The Offworld project started with an urge to create something that didn’t necessarily have an obvious fit in our world. I’m a big fan off surrealistic and science fiction and thought it would be fun to make something alien, but believable.
I knew the project would involve some landscape work and that I could have a bit of creative freedom with the project. Pushing the believability of that landscape was a focus, as was really nailing a realistic and somewhat filmic lighting quality with the final presentation. Start to finish the project took me around 6 days.
Using World Machine & GeoGlyph to Build Environments
My landscape was created with actual geometry instead of using Unreal’s landscape feature. I’ve worked with landscape in the past but I wanted to keep the scale and scope of the terrain relatively small (all distant terrain is just warped versions of the up close terrain).
I knew that going into the project, I had no clear final picture in mind. I had fun reference gathered, but no final concept. Iteration time was going to be key and while I could have sculpted the base terrain mesh then textured that in other programs, working almost 100% in World Machine gave me amazingly fast tools to try and create something special. It was a breeze to add in craters, and quickly add natural erosion on top when I was finished.
I also used GeoGlyph – QuadSpinner’s World Machine’s Toolbox. It adds a new UI option, some great generators to work with, and a bunch of extra tools and functions (like far more erosion options). It also brings in some amazingly powerful texturing options like filters that generate interesting masks based off of existing height fields and a broad selection of gradients that were very useful in creating a color map. In the end GeoGlyph helped me push the content I was creating in World Machine to a much higher quality by giving me access to professionally made tools that I wouldn’t have otherwise had access to (without attempting to recreate myself).
I think the easiest way to talk about the materials for the terrain follows the process I went through when I started.
Initially I knew I wanted to make some form of global color map for the terrain mesh. By using my height map, some erosion maps, and Photoshop I was able to create an interesting overlay that matched the terrain. I also created both a low poly and high poly mesh from World Machine which I used to bake a height map (to make the terrain more detailed when it tessellated near the camera) and a normal map. Finally I also exported some basic erosion and slope masks in another texture in case I had need of it.
Next I layered my tiling gravel texture, a mud texture and a wetness pass on the material using Unreal 4’s overlay blend mode, some of my masks, and vertex painting. I colored the mud and gravel using the giant color map I created in World Machine and blended the terrain’s height and normal info with the tiling texture’s height and normal info to make sure everything fit well together. At that point I added some ground clutter rocks and a couple larger rocks to make some more interesting shapes.
When it comes to Substance Designer, and a lot of my personal work, I tend to look at the tool as a resource creator. Sometimes I use it for masks for particle materials, and other times I adopt Bradford Smith’s subtractive sculpting ideas to make interesting shapes. In this case I used it to create a very rough rock pattern and combined that with another texture that was generated from a photo to make a final rock texture which I used on some small and large meshes in the terrain. I enjoy working this way because it lets me build up a library of parts (both mesh and texture) and combine them how I see fit or need. In this instance I combined those two textures offline in Photoshop but sometimes I composite the materials together in Unreal, in the style of some of the Infiltrator Demo’s or the UE4 Particle Example Map’s materials.
Lastly regarding the bubbles, those were actually just particle meshes floating above the surface of the mud. I wanted to add a bit of movement to the scene and some form of boiling mud tells a bit more visual story about the area. Because masked materials in Unreal 4 can be lit the same was as regular meshes, it was very straight forward to get the bubbles to sit really well.
Creating the Lighting
My lighting setup for this scene was actually really straight forward. I have a stationary directional light and a skylight. The only “special” setting going on was the use of distance field ambient occlusion (which I tinted a bit to help give the scene some cheap bounce light). I did experiment with using a second directional light to help tint some of the shadows but ended up deciding against it.
For my atmospherics I used exponential height fog to push back the distant mountains and meshes, while the sun and sky were created using atmospheric fog that was tweaked pretty aggressively. Originally the sun was much bigger, but over time it shrunk to the size that you see it now. I was also planning on having far less atmosphere in the picture but as I worked I liked what it did to the color composition so I used more and more of it.
The final polish on the image did come down to post process tweaks. I used a pretty aggressive filmic style color correction and did play extensively with color balance, contrast, ambient occlusion, and bloom. Achieving the color range in some of my final renders is one of the things I am most proud of with this study.
Creation of Visual Effects
There were three major components the extra VFX I added on top of the finished environment. The first, were simple steam/dust cards rising from the craters with the mud. There isn’t much to mention about those other than they were lit cards so the cost was a bit higher but it helped them sit well in the environment.
The second element I added were my previously mentioned mud bubbles. The bubbles were mesh based particle systems that would spawn various sized bubbles that were colored in a top to bottom vertex color gradient, and textured to fit with the mud they were placed in. Over the life of the particle the bubble grew in size, then expanded along the vertex normal based off of the vertex color mask. At a certain point, they then popped and eroded away based off of a blend map mixing with the vertex color gradient (so they popped top to bottom).
The final element was added at the very end of the project. I’m a big fan of story and mystery in artwork and adding the falling meteor/ship element gave the setting a very small but effective narrative hint at something more than a flat landscape. The particle system for them was actually pretty straight forward. The meteor itself was just a simple velocity facing card with an emissive mask on it. The trail was a version of a trick I saw in the Unreal Content Example project that can be grabbed for free from the Unreal Marketplace. The trails are straightforward ribbons, but the textures on them are world projected. This meant that the ribbon could move with the particle but give the impression of a fading contrail (the fading was again based off of the same world space texture). Over the life of the contrail the ribbon slowly moved left to give the impression they were fading with some slight wind.
Choosing Unreal Engine 4
Unreal 4 has been a very natural fit for me since the day it’s come out. I’ve had the opportunity to work in a few different public and proprietary engines which all specialize in their own fields but to me Unreal 4 comes in strong on every single front. It’s got all of the modern features (and more) that I use to create high end artistic content, and as someone who is interested in using a technical skillset to improve his own art, Unreal 4’s blueprints and material editor make the opportunities endless. Both of those features allow me to truly be creative with what I do and how I work by allowing me to try weird tests and experiments that would in other development scenarios, take serious coding time, or a focused knowledge in those areas.