Self-taught environment artist Richard Rude talked with 80.lv about his amazing Unreal Engine 4 scene ‘HMS-SRV Galileo’. He described the way he created the amazing hologram and gave some other neat tips.
My name is Richard Rude; I am a self-taught Environment Artist currently living in Pittsburgh, Pennsylvania and looking for work. I grew up playing video games every waking moment. When I was 4 years old, I got my first computer and Spider-Man. That is what hooked me into video games. At 15 years old I fell in love with The Elder Scrolls V: Skyrim and decided to take a look at the Creation Kit. I had a blast playing around in the editor and making my own maps, so I decided to look more into it online, where I discovered that I could make maps for a living! Since then I have been focused on becoming a better artist. Recently I have taken a class at the CG Master Academy with Clinton Crumpler called “UE4 Modular Environments”. That’s where this environment originated.
When blocking out, I focus on the proportions and scale of the asset as this is the highest priority at the beginning of production. I started my blockout in 3ds Max creating rough shapes for the modular pieces and large props. Then I exported each piece individually and assembled them in Unreal Engine 4.
Once I had a rough scale that I liked, I then continued to block out the asset more and focus on the details.
When determining where to place assets in the scene, I used the concept as a rough guideline and used my judgment to determine exactly where to place them. As I was positioning the assets, I thought about the overall composition of the scene. At the end of the day, all that matters is that it looks right from the camera/player perspective.
Trim sheets are textures that can be used to add details to an asset without having to do a unique bake. Trims sheets and modularity work together to help reduce production time as well as increase performance. When creating trim sheets, the first thing I do is plan out what details I want and where I want them on the texture. After I have a solid idea of what needs to be made I create the high poly in 3ds Max, from there, I bake a normal and ambient occlusion using Marmoset Toolbag 3 (its new baking features are excellent). To texture the trim sheet, I bring it into Substance Painter 2 and apply various materials and generators to get the look I am going after.
Combining 3DS Max and Zbrush
3ds Max and Zbrush work hand in hand when creating assets. 3ds Max is ideal for creating the bigger shapes while Zbrush excels at creating smaller details. I have a mixed workflow for creating more minor details; depending on the detail, I will either add it in Zbrush or Substance Painter 2. For example, if an asset has a significant amount of edge damage then I will sculpt it in Zbrush, but if I have to add small bolts or screws, I will stamp them in using Substance Painter 2.
The first thing I did, which I do at the beginning of any asset, is gather reference. I got a huge amount of inspiration for my hologram from the hologram of Reach from Halo.
Once I had an idea of what I wanted to achieve I began working on the shader in Unreal Engine 4. The primary hologram was split into three materials: main globe shader, cloud shader, and points of interest shader.
For the main globe shader, I created a base material and set its blend mode to additive and its shading model to unlit.
Then, I added in my base globe texture and multiplied it with a mask to only show the continents. To add some movement to the hologram I plugged a panner node into the UVs section of the base texture and mask.
Over the top of that, I added in an outline of the continents and parameters to control the color and intensity.
To give the hologram more depth, I added an inner and outer fresnel with parameters to change the falloff and color.
For smaller details, I multiplied a scanline texture on top of everything and added a panner node in the UVs to give it some downward motion.
To be able to control the amount of light that gets cast into the scene from an emissive material I used a LightmassReplace node.
For the emissive to cast light into the scene, you have to enable it in the static mesh settings under “Use Emissive for Static Lighting.”
To use the parameters I set up I created a material instance of my main globe shader.
The cloud shader and the points of interest shader are similar in construction to the main globe shader but required fewer nodes.
From the 3 shaders, I created 4 material instances that are assigned to 4 spheres that are each slightly extruded from each other to give a more three-dimensional effect.
The base of the hologram is made from a simple shader that uses an inner and outer fresnel and has a texture that feathers the top and bottom edges. This shader is applied to a simple cone shape.
The end result:
The planet shader utilizes some similar techniques as the hologram except the blend mode is set to opaque. It uses a fresnel multiplied by a light direction mask and then is multiplied by the base globe texture and base cloud texture and plugged into the emissive. The planet shader is then applied to a sphere.
Lighting is a huge process within the pipeline; it can either make or break an environment. In my scene, I used one directional light, one skylight, and a mix of point lights and spotlights. The directional light acts as the primary light source and represents the sun in this scene. The skylight is used to capture distant parts of the scene and apply it to the scene as a light. The point and spot lights act as secondary light sources to fill the scene. To try to get the perfect lighting I went back and forth between the directional, point, and spot lights editing the intensity, inner and outer cone angle (for spotlights), attenuation radius, and indirect lighting intensity until I got a desirable result. When it came to the temperature of the lights I wanted to maintain a realistic look so I used a temperature of 3800 Kelvin to give off a nice soft, warm light.
To push the spotlights in the scene even further I added an IES profile to them.
For the best possible reflections within the environment, I used a planar reflection actor on the glass window and multiple sphere reflection captures throughout the scene.
When it came time to bake lighting I made sure that all of my assets had efficient lightmap UVs as well as adjusted the Lightmass settings to get the perfect balance between baking time and quality.
The whole production of the scene took about 2-3 months working on it in my spare time. The biggest challenge I ran into during the production was getting the lighting to enhance the mood I was going for, in the end, I got the result I desired. Overall, the ability to leverage modularity and trim sheets allowed me to increase productivity while maintaining quality.