Alec Tucker did a breakdown of his UE4 environment based on the well-known movie Cast Away and talked in detail about vegetation, lighting, work with Megascans, and more.
In case you missed it
Study more islands!
Introduction & Career at Epic Games
In high school and after graduation, I focused on Cinematography and Film Editing but then decided I needed a change. After a few years of being uninterested in film, I decided to pursue a Computer Animation & Game Design degree at a nearby college. From there, I started with 3D modeling in Maya which eventually transformed into doing Environment Art. At school, I modeled characters and props for several video games that my classmates were producing at the time. I quite enjoyed making small dioramas and scenes for my props and characters, so I gradually shifted to creating full environments in my free time and for coursework. During a Game Asset Modeling class where our professor let us choose any game engine, I discovered UE4. I wanted to challenge myself so I went with the engine that people were saying was harder to learn but produced great results if you put time into learning it.
A year later while still studying, I got hired by Epic Games, joined their Cinematics team and have been working there for about 4 months. I had my portfolio uploaded on The Rookies where people who aren’t yet working professionally in the 3D field can display their work for recruiters. One of the people in charge of the website passed my information along to the Cinematics team at Epic and I was lucky enough to get an interview and ultimately a job. I would not have been hired if I hadn’t been working on side projects in my free time to supplement my portfolio.
During my time at Epic, I have been primarily responsible for set dressing and foliage placement for Fortnite Season 10 and Chapter 2 Cinematics, advertisements like P-1000 and Peely Bone skin videos, as well as crossovers like Fortnite x Batman, Fortnite x Mayhem, and Fortnite x Star Wars. Currently, I’m working on the next marketing cinematic piece for Fortnite.
Cast Away in UE4
Cast Away: Start of the Project & Challenges
The project started out as an unnamed tropical island with interesting features in certain areas. I started noticing how similar the whole thing was to Cast Away and realized it would be really cool to make the island with the props and locations from the movie instead. The film was one of my favorite ones as a child, and I wanted to revisit that island and interpret the film’s location in my own way.
Since the film is considered classic, a lot of people must have seen and, as a result, interpreted it in their own way. This poses a problem because it means I have to be thorough with all aspects of the mood, props, and overall feeling viewers get from looking at the scene.
My primary emotion when thinking about Cast Away is nostalgia, and I assume that it applies to others as well. I specifically designed the scene to play off of people's nostalgia, especially with the star of the show - Wilson the Volleyball. Going off of pre-existing materials is difficult because you have to get all the important aspects right in order for people to make the connection to the original source material. In my final renders, I included a few angles that were the same as the ones in the film, specifically set in emotional moments of the story. For instance, the nighttime scene with the bonfire takes place during the moment when Tom Hanks is celebrating his achievement of starting a fire.
Render (1) vs Shot from the film (2):
Another challenging aspect of this project was determining where I can allow myself to be creative and what should remain the same as in the original film. I chose to make an updated island, almost like a remastered version of Cast Away to show it in higher detail and more vibrant color, but leave certain landmarks the same as in the movie to stay consistent. Here is my moodboard with references I used for each point of interest (POI) and for the main area of the island:
Use of Megascans
Megascans has been the single most useful asset resource I have ever come across when making organic environments in UE4. Since I tend to make more nature-based scenes, the scans from Megascans let me achieve an insane amount of photorealism.
Instead of focusing on making or scanning every asset which involves buying software and /or a camera, you can just use Megascans which has most of what you would need for a natural scene. If you have an idea, Megascans assets are the Lego blocks you can use to bring your idea to life. It’s an integral part of my production process now because it helps me construct my ideas much faster than making each asset individually. On top of that, Quixel makes its applications and plugins very simple to use and modify.
I used Bridge’s integration into Unreal 4.22.3 to make selecting assets and importing them extremely simple and quick. You get a ton of control over texture resolutions and LODs, so you can choose to prioritize optimization or go for the highest res possible. I usually determine what LOD I will use based on how much of that mesh I plan to use. If I plan on painting in thousands of pieces of foliage, having a low poly mesh helps tremendously. In a game-ready environment, having the LOD distances calculated correctly based off of screen space can improve performance greatly.
My general workflow is to find the assets I want in Bridge, export it to Unreal, match colors and roughness to the scene, and add my modified master material that has extra features like Detail Normals and Dither Blending.
I modified every single texture and asset I brought in from Megascans. Most notably, the sand textures were all from different parts of the world, meaning the color and roughness of the three sand materials varied greatly. I used buffer visualizations through albedo and roughness to make each material different, then used the color adjustment settings built into the texture settings to adjust them by eye until their color and roughness matched perfectly. I also modified the mid-sized trees by adding subsurface that was more saturated than in the Default Megascans Material.
I rarely use Megascans assets out-of-the-box. If I were to use all of the assets untouched, the scene would look completely different and the assets would most likely not go together very well or feel believable in the environment.
I wanted the island to feel small and insignificant, but also large and unexplored. The combination of feeling lost and the wonder of discovery were the two moods I went for with this piece. I made the island smaller in scale than the actual island in the movie because in a lot of reference photos it felt very large, almost like a peninsula of a large continent. By making it extremely small in size, I created the feeling of being stranded - just how Tom Hanks felt when he first arrived there.
For vegetation, I used 3D foliage assets from Megascans which are fully textured and LODed plants. Each kind of plant had 3-4 variations. That combined with a slight range of scale in order to make them vary in height helped a lot with adding variation to the different levels of foliage in the scene.
In the film, there was a lot of dead and dried foliage on the ground. I chose to make all of the plants live and green to give the island more visual interest and a healthy look.
For foliage placement, I had a simple rule: start with the big shapes and work your way down to secondary and tertiary ones.
I started with the palm trees to give the island its shape and scale, specifically placing them in certain camera angles to act as leading lines for the composition. Next, I placed mid-sized bushes and trees to act as padding between the denser and smaller plants that are at the eye level. These secondary trees and bushes created very interesting shadows and mini-vignettes in certain areas, shown below:
After placing the mid-sized trees, I placed the smaller plants to form the paths through the island and fill in the undersides of the larger trees. This is where I spent the most time to get realistic and eye-catching results according to how plants would grow in real life:
These paths guide the viewer to the important locations in the scene, plus serve as a story element: Tom Hanks roamed there when exploring the island.
For sand on the paths, I chose to go for Megascans again and use their default out-of-the-box Master Landscape Material because it offers everything I would want in a landscape material: Displacement, Tiling Adjustment per texture, and Roughness control. There are three types of sand here: sand with footprints, wet smooth sand for where waves have interacted with the shore, and untouched small sand dunes.
These three materials helped me create paths that Tom Hanks used and give the island more of a “lived-in” feeling.
For the daytime shots, I had a pretty straightforward lighting setup. I used a movable Directional Light to act as the sun set to the default brightness of 10. I also had a movable Skylight which creates the fill light for the foliage and darker areas.
Connected to the Skylight is Distance Field Ambient Occlusion, which gives foliage and other assets a very soft and diffused fill light.
In Project Settings, enable ‘Generate Mesh Distance Fields’ at a minimum. For performance sake, I also enabled ‘Eight Bit Mesh Distance Fields’ and ‘Compress Mesh Distance Fields’ and noticed no difference in quality.
This sort of light complements foliage a lot because it simplifies the shadows and bright spots to make them look less visually complex. This combined with Screen Space Ambient Occlusion (SSAO) with a much tighter radius made much darker shadows in spots that are closer to the ground.
Another method for creating more lighting detail is to adjust contact shadow length in your Directional Light settings. This creates micro details in your shadows which help ground the scene.
I went with a very bright look for this scene to help give the viewers a sense of wonder and exploration. Keeping this light bright gave me an opportunity to exaggerate the Subsurface effect of the plants and props.
For the nighttime shots, I used the same combo of Directional Light and Skylight with DFAO. I made a bonfire as the focal point using a Point Light. It is worth noting that the Point Light also has adjusted contact shadow length to exaggerate the shadows on the sand. To help with the atmosphere, I added fog cards to the background to make the mountain look further away than it actually is and to help soften the bright light of the moon.
To get the reflections in the ocean water shader, I just turned down the roughness but kept the specular value at .5 or .6 so that other areas of the water didn’t look like glass (I notice a lot of water in UE4 looks like it).
I went for what is called “Movie Darkness” which is brighter than the actual darkness, meaning that you can see all the details in the scene, but it is still dark and has characteristics of nighttime like color temperature and darkness.
The brighter overall fill light of the scene combined with the clouds covering the moon made the atmosphere feel like nighttime. A good way to judge if your scene is too dark or not is to take a screenshot, import it into Photoshop, and look at the histogram of it. If there are a lot of black details being lost then your scene is probably too dark.
Colors also mattered in the scene. I went with a semi-Analogous color scheme mainly to make everything blend well together. The shades of green and yellow give the feeling of a warm and welcoming tropical island. The raft being yellow was a choice I made to stay true to the original film. I chose a brighter and more saturated yellow so that it matched other colors of the scene (also bright and saturated).
For the nighttime shots, I went with a warm vs cool color scheme just like in the film. I wanted the scene to feel almost opposite to the daytime lighting scheme to show the environment in a different way. The warm firelight gives a feeling of comfort in the otherwise cooler-looking lighting.
Other Assets That Helped Along the Way
Asset packs and third-party plugins are a tricky subject because the artists have to identify what they are willing to make themselves from scratch and what they are willing to pay money for. This can cause people to overuse asset packs in their projects. I chose to expedite the process of making this scene by using a few asset packs simply because I would rather put time into polishing and making my project up to my standards than spend a lot of time making every single asset and blueprint. For this project, I used Megascans mainly but also Ultra Dynamic Sky from the Unreal Marketplace to create my cloud cover. I chose this sky plugin because it has very robust settings for all times of the day and can connect to your already existing Directional Lights and Skylights.
I also used the Ocean Water Shader being developed by the UE4 community. It rather complex to use, but ultimately produced way better results than if I were to create water blueprints myself. It has weather effects and other cool things like fish that you can enable, but I used only the water. This plugin helped me to get clear waves heading to the shoreline with seafoam on the sand.
The next asset pack I used was a free Unreal Marketplace pack called Open World Demo Collection. It comes with several high-quality scans of rocks that worked well in this environment. It’s good for filling in the blank spots that cannot be covered by assets from the Megascans library. Beware though - the assets in this pack have textures up to 8k and need to be down-rezzed to be usable in real-time projects.
The hardest aspect of this project was matching the foliage colors with the reference. Most of my time was spent on getting the colors to work well with each other. The different shades of green that the plants originally came in did not fit in a tropical setting at all. This meant I had to go into every piece of foliage and adjust the brightness and color of each Albedo map, as well as change the subsurface strength and color to react to the light and fog in a way that was visually pleasing.
During the production of the project, I also ran into a few issues with performance. This forced me to do an optimization pass where I reduced texture resolutions and LODs and looked into the GPU profiler within UE4. The GPU profiler is extremely useful because it can show what is stealing milliseconds from you while viewing the scene in the viewport. I highly recommend using the GPU profiler once in a while to optimize your environments to run well.
As for future projects, I am currently planning to make three new UE4 projects. I’d like to focus on each one individually and finish all of them at a level of quality that I'd be proud and content with. Constantly having something to work on gives me a large amount of creative output.
Thanks for reading!