Very Nice, Love the rocks man!
Awesome walkthrough, I really learnt a lot. It was great that Adrienne give links to other people tutorials too!
Anybody get that?
Aldana Zanetta shared the way she approached the recent Unity Environment Contest and created her beautiful ‘Futuristic Exploration’ scene.
Hi, my name is Aldana Zanetta, I am from Argentina, but lived most of my life in the U.S. I have been in the game industry since I was 14 years old. Currently I am 20 years old and work for Digital Wizards Entertainment as the creative director, and game director of a VR project, Alice in the Forgotten Lands. In the past, I only knew how to create 2D assets and concepts and worked on mobile games, but with the help of the web, video tutorials, and my dad, Fernando Zanetta, a long-time developer in the game and software industry, I now know the full game development pipeline. I graduated high school two years ago and decided to fully dedicate my time on my projects with Digital Wizards Entertainment. Before we worked for contractors on various projects but starting this year we will only focus on our products.
About the project
I have used Unity since 2011 and when I found out about the contest I decided to give it a try, the only issue was that I had only five days left until the deadline. Because of time, I had to change the way that I would usually start a project. The first thing that I did was quickly plan out a list of ideas that I wanted to do for the project, and later figure out what I could actually finish in time from that list. I used a variety of assets and plugins that I bought from asset stores in order to finish the project in time.
At the start I knew that I was unable to finish an extremely detailed environment, so I made the world very arid and focused on creating an entertaining memorable character instead. To save time I also knew that the character that I would create could not walk. Realistic walking animation takes time and I could not afford that within the time range that I had. The only choice left was some kind of robot, and since the challenge theme is about the future, I believed that a robot would be perfect.
At first, I was tempted to create a floating robotic sphere, kind of like the character in the game Portal 2 or the VR game Robinson the Journey but decided against this since I wanted the character to have more personality. So instead I was much more inspired by the movie Short Circuit and Wall-E. The arms and head gave me the ability to add personality to the character and to create a variety of fun animations. Once I had the character planned out I had to come up with a simple story, at first the robot was supposed to investigate a crash site and bring back the information that they gathered to the city, but because of time I had to cut the storyboard. The current story follows the robot on their journey back to the city.
My basic plan for the next five days looked something like this,
Day 1: Created the robot character model. High polycount, low polycount, UV, rigging, and textures
Day 2 : Created the environment in Unity, including lighting and particle effects
Day 3: Worked on the robot’s animations
Day 4: Worked on the cameras, tried different ideas using Cinemachine and the timeline
Day 5: Added sound effects to the timeline.
I was only able to accomplish my plan by working 12-14 hours every day on the project.
The first task that I wanted to finish was the character. I did not want to have to struggle with the character near the end of the deadline because it was the main focus of my project. The high polycount model was created in Zbrush. Later in Modo, I retopologized the robot, created the UV map, and rigged it. Using Substance Painter, I baked the high polycount model details to the low polycount and textured the robot. I also created an emission layer for the lights. In Unity I added spot lights to the robot’s eyes mostly for the night scene.
High polycount created in Zbrush
Low polycount created in Modo
Textures created in Substance Painter
The robot textures that I used in a standard Unity material
The next step was to create the world. When I create an environment I always make sure to start with a simple plane and a texture that will serve as the base material to the environment. I also like to have the skybox, lighting, and color scheme solved in this stage. Making sure that the ground and sky match in style and color is very important to me. Most of the time I also add the fog in this stage to blend the area where the ground meets the sky. From here I start to work on the shape of the environment, mountains, valleys, canyons, etc.
Here are the steps I took to create the first location.
For the environment of Futuristic Exploration, I had several location ideas. The first location that the camera is in had the most detail and work put into it. I wanted to start with a surreal like environment to catch the eye of the viewer. In the beginning, the image that I had in mind was much darker with an eerie feel to it, but I did not like the contrast of a friendly and colorful looking character in a dim environment. When I made the changes to the scene I added much more light and switched the color scheme to the brown and sandy hues.
The environment style that I had in mind at the start had a much darker feel to it, with the storm like skybox and dim light.
Once the color scheme, skybox, lighting, and the terrain shape was setup, I started to paint the terrain textures. The terrain materials are from Substance Painter Source, I mostly looked for desert and sand materials. Later using MicroSplat from the Unity asset store I painted the PBR textures onto the terrain. The rock formations were created using a voxel plugin that can be found on the Unity asset store called Voxeland. I used voxels so that I could give the environment that surrealistic effect. I added a lot of fog to the far away formations to increase the scale illusion of the world. The fog in the foreground was created by using FogVolume 3 from the Unity asset store.
The environment without any background fog, only foreground.
The scene has three main lights, one is the directional light that acts like a setting sun, a point light is placed near the water to give the illusion of the sun’s reflection, and the other is a spot light that I used to illuminate the spaceship and part of the rocks to give the scene more volume. I played around with the directional light to find the right position that would artistically enhance the scene. The lights were later improved with a Unity asset called VolumetricLights. The volumetric light effect can be seen in the night location, it is a very powerful tool that helps the lights become much more realistic and intense.
I use a variety of lights in my scene to get the effect that I am looking for.
By using a simple material I am able to clearly see how the light is hitting the objects, and adjust the ambient occlusion.
The water was added for an artistic touch, and to increase the setting sun effect. I used Aquas Water/River Set found on the Unity asset store for the water.
I created the rest of the locations using the same steps.
The camera transitions, movement and animation gave the project a lot of life. For the cameras I used Cinemachine that can be found on the Unity asset store, and the TimeLine. I experimented with different camera angles, camera locations, and the view style of the cameras itself.
To enhance the camera’s render view, I used the PostProcessing Stack that can be found on the Unity asset store. I had three different post processing behaviors settings for the cameras. The first post processing behavior that I used helped enhance the color of the scene, added the bloom effect mostly seen on the water’s reflection, added real-time ambient occlusion, vignette, and blurred far away objects. This post processing setting was used on the first camera and the last two. In total I had five cameras in the scene.
The next location in the scene takes place at night. I wanted to have a night scene to show the character’s emission and lights. Plus, I really liked how the particle effects look at night. In order to make the lighting of the scene go from day to night, I used a code that would change the lighting and skybox settings when the main camera switched from one to another. In this scene, I added a spot light shining down on the robot to increase the metallic look of the material and to give the robot a sense of importance and volume. I place a light pole to the side so it looks like the blue spot light is coming from the pole, to make it look natural. The Post processing effect is different on this camera, because it has increased bloom and no background blur.
The night time location is a very simple and controlled scene. Since the camera does not move around, I am able to concentrate in a small area of the environment.
Robot lighting setup in Unity. I added three lights to the character for the night scene, two spotlights for the eyes, and a point light to enhance the particle effects of the plasma. The antenna also has a particle effect with a red light that will blink every few seconds. The addons are attached to the root of the robot.
The volumetric light helps this scene a lot, especially with the spot lights.
The next camera in the scene is a unique one. With this location I wanted to keep the environment very simple and artistic. Once more I went back to day time. Here, the robot can be seen far away, blurred, crossing the desert, while the camera is focused on the desert sand in front of it. The lighting and skybox have changed once more. Here the sky is very blue with some clouds, and the directional light looks as if it was some time at noon. I made sure that the light is in the middle and very bright for artistic reasons. I also liked the extreme vibrant contrast from the golden sand and the blue sky. The post processing setting for this camera is much different from the rest. The blur intensity is stronger, and the color contrast is greater as well.
Lots of camera blur in this scene, and bloom effect.
How desert scene looks without blur or the bloom effect.
The last two cameras share the same post processing setting as the first intro camera. The time of day, skybox, and lighting is the same as the third camera, the desert crossing one. The only difference is that the fourth camera follows the character as the robot hovers through an abandoned location. I was able to do this by using the Cinemachine and the Unity Timeline.
I played around with the camera perspective and decided to add objects in front of the camera as the robot moved throughout the land.
For the camera angles and movements, I used a lot of movie references to see how they use the camera to convey emotion, action, and or artistic enhancement.
The animations of the character became extremely important, it had to be entertaining for the viewer and realistic with a cartoonish feel to it. I decided to let the character interact with the camera a bit, it gave the robot a friendlier aspect. Before I started to animate the character, I had some ideas in mind on how the robot was going to act. Once I had the environment setup, I used a Unity tool that I bought from the Unity Asset Store called UMotion. This tool allowed me to animate directly in Unity without needing a secondary animation software. The tool was extremely useful since I was able to quickly create and fix the animations in the game engine itself.
Another feature that I added to the robot was the ability to make some facial expressions. The eyes played the biggest part in this step. I modeled the character with top and bottom eyelids, but instead of rigging them, I used morphs also known as blend shapes. By morphing them I had better precision on what expression I wanted the robot to have throughout the scene. I’ve been using this morphing technique in one of my current projects, and it has given me the possibility to create amazing facial expressions. The animation of the morphs are created in Unity. I keyframe the morphs in the Unity animator and blend it with the rigged animation by using a layer with full influence in the character controller.
In the end, Futuristic Exploration was an entertaining challenge. It helped me learn the basics of how to create a real-time cinematic clip that I could later use to add cut scenes to my game. The greatest challenge that I faced during this project was the creation of the last environment location. It took me many tries to get the city in the canyon to look vast and far away.
The trick was to place more fog and to find the right angle for the placement of the buildings. If the buildings were placed too close, it made the landscape look very small, I had to do many tests to get the correct distance from the camera for the city to look real. The buildings are from the Dark City asset pack that can be found on the Unity Asset Store.
A good thing to remember is that a great product can be achieved in a short amount of time if you are determined to accomplish it. Everything that I have learned to this day is from trial and error and finding the best ways to create what I have in mind. I am continually learning from web tutorials and finding new techniques and software that I can implement into my projects.
Aldana Zanetta, Creative Director.
Interview conducted by Polly Filianina.