MAGIC MOORLAND
Take a trip to the Magic Moorland with Julia Cui as she breaks down her charming stylized environment. We dive into topics such as scene composition and creating focal points, lighting, modular kits, foliage and skybox creation as well as Julia’s experiences studying at a games art school compared to a mentorship.
Intro
Hello everyone, and thank you, Experience Points, for inviting me to write this article. My name is Julia Cui, and I recently completed the Environment Art program at Vertex School after graduating with a diploma in Game Art at SAE Vienna. I also received mentoring from Experience Points to help finalize my portfolio.
Discovering the world of 3D game art took me some time. I had worked in various industries, including gastronomy, sales, and law offices, but I always wondered where my true passion lay. I enjoyed drawing, but I knew it was just a hobby. After exploring different fields of art, I discovered a local institute that offered education in Game Art. That's when I began to learn 3D, and I knew it was exactly what I had been searching for.
Composition
When creating this environment, my main focus was on world-building and composition. To start, I used a concept by "liquidcoco" on ArtStation as inspiration for the design of the houses and created a rough blockout in Unreal Engine 5 of how I wanted to assemble the rest of the scene.
By following references and placing my assets as "guiding lines" pointing towards the house, I made it the focal point of my shot. To frame the shot, I added slightly tilted trees and some mushrooms in the foreground. It's always helpful to plan out the foreground, midground, and background of your environment. Additionally, keeping the shapes consistent is important for a cohesive design. I made sure to keep the background interesting with different cliff and mountain forms, while making sure they stood out from each other.
For colour, I made the midground more saturated and added fog cards in the back to create some depth. To make the foreground darker, I covered it with shadows from the trees.
Lighting
When it comes to creating a good environment, lighting is one of the most important and difficult parts. That’s why in this scene, I used Lumen and a Blueprint called "BP Lightstudio". It's a great tool that allows you to tweak the sky and fog components in one panel and makes it easier to rotate the clouds of the HDRI. To start with, I focused on placing the directional light towards the house. I wanted to create a bright and saturated scene, so there should not be any big shadows in the midground. However, I needed shadows in the foreground to frame the shot, so I placed some bushes and trees above the camera.
The angle I used for the directional light created some sharp shadows on the house, so I added some softer spotlights to those areas. Since I'm planning to create a night scene as well, I modelled some rooms inside the house behind the windows. That is where I placed some spotlights that are pointed outwards.
I also used fill lights for the foreground to avoid it being too dark. However, I kept in mind that rectangle and point lights can be expensive, so I used them only because I knew it was for a rendered shot. If this was for a real-time game, I would have tried to use only a few spotlights to fill in the dark spots.
Finally, my mentor Salvador Sanchez helped me create a LUT for the post-process volume, which made the scene even more captivating. I would recommend everyone to try out using a customized LUT, it’s very easy to do and the Unreal Documentation explains very well on how to create one.
School Experience
I started this project back in my third term at Vertex School and then finished working on it during my mentorship with Experience Points. I had the pleasure of having Kem Yaralioglu as my mentor at both places, guiding and supporting me all the way through the project.
In my opinion, Vertex School as well as the Mentorship with Experience Points were a valuable experience that was necessary for me to achieve a high level of quality in my projects. The mentors were all professionals working in the industry and the feedback they provided was eye-opening and allowed me to learn and grow as an artist. Vertex School also provided pre-recorded courses that helped me learn the proper workflow. As a student, I had weekly assignments that helped me to practice what I learned.
How Did You Translate What You Learned In Class Into This Project?
During my time at Vertex School, as well during the Experience Points mentorship, I had weekly one-on-one feedback sessions with my mentor Kem. I also attended the so-called “labs” held by two other mentors - Ben Merrick and Salvador Sanchez - during my time at Vertex.
I made sure to take as much feedback as possible from them and took notes of everything they mentioned. I also prepared questions that occurred during the week and asked my mentors for guidance on how to tackle certain problems. In my opinion, to get the most out of the program, it is important to implement the feedback that was given. I could always learn a lot from the information, but putting it into practice was when I truly understood how things worked and was able to acquire the knowledge effectively.
Suggestions To Other New Artists Considering School
I believe it's crucial to remember that, regardless of the school or mentorship you choose, ultimately, the work is up to you. I decided to enroll in school because I was fully committed to devoting all my time and focus to it. While mentors can provide valuable feedback and take your projects to the next level, it's up to the student to apply that feedback and be open to learning new workflows. In the end it is really the student who needs to be willing to put in the work to achieve their goals.
Working With Classmates
I really enjoyed having classes with my classmates because the world of 3D is so vast and there are endless things to learn. Through their projects, I could also learn how to solve certain problems and pick up new techniques that might come in handy in the future. It was always inspiring to see my classmates' projects evolve and improve every week, and I was fascinated when I saw their finished environments at the end of the term. Having classes together not only boosted my motivation, but also allowed me to connect with other artists from all over the world.
Mentorship Experience
Having a mentorship is a fantastic experience because you get personalized, one-on-one lessons where you can focus on specific workflows and get tailored feedback on your projects. At Experience Points, they keep things super organized by providing an individualized note-taking page on notion where important details can be written down. They also offer a personal drive where you can upload files and projects for review. And the best part is that everything is recorded, so you can go back and re-watch the lesson anytime you want.
All in all, I can honestly say that my mentorships at Experience Points as well as Vertex School were an amazing experience. Sure, they might come with a hefty price tag, but let me tell you, they're worth every penny. I can't put a price on the valuable feedback, personalized lessons, and professional connections I gained through these mentorships and classes. If you're serious about taking your skills to the next level, I highly recommend investing in one of the mentorship programs.
What Did You Learn From The Mentorship?
Mentors have a trained eye for environment creation and related skills, which can be incredibly valuable to improve your art and portfolio. With their industry experience, they can provide invaluable insights and guidance along the way. As a student, there are often situations where you may be unsure of how to solve certain problems, and having a mentor who can show you the way can save a ton of time. For example, when I was trying to create trees in Speedtree, there were numerous tutorials available, but it would have taken me much longer to sort through them and find the information I needed compared to my mentor showing me the specific techniques I needed to take to achieve my desired end product.
Another example was when I tried to place the fence by hand, my mentor showed me how to set up a Blueprint for a spline that would allow me to speed up the process significantly. There are many approaches and workflows that may seem basic but are unknown to students like me. Sometimes, we might do things in a more complicated way, and a mentor can identify that and suggest an easier and more effective approach, which would take much longer for us to figure out on our own.
School vs Mentorship
I think mentorships are tailored to one's specific needs, as the focus is on the student's work. Classes are great for learning the fundamentals and technical aspects of 3D, but mentorships allow you to enhance and refine your skills, taking your projects to the next level.
Skybox
The clouds played a major role in my environment, so I was determined to find a way to create them early on in my project. My mentor recommended a Cloud Creation Tutorial by Tyler Smith which was incredibly helpful in achieving the painterly style that I was aiming for with the clouds. If you're looking to make clouds in any style, I highly recommend checking out this tutorial. It's a game-changer!
To give you an idea of how I implemented the tutorial's techniques, I started by creating a collage of different cloud pictures in Photoshop. Using the finished picture I painted a mask for each RGBA channel. Then, I created a shader in the Engine that allowed me to manipulate the colours and flow of the cloud planes through the RGBA channels.
Shaders and Technical Work
I wouldn't consider myself an expert in the technical aspects of environment creation. It took me a while to grasp the concept of shaders, and I had to watch numerous tutorials and seek guidance from my mentors.
To simplify my workflow, I aimed to create a comprehensive master shader that could cover all my texture needs. Apart from that, I only needed a few other shaders for my landscape, decals, trees etc.
Master Shader and Material Functions
I prefer to begin building my Master Shader by creating a Material Functions first. I start by building a base with essential elements such as Colour, Normal, Ambient Occlusion, Roughness, and Metallic (for the foliage material, I added an opacity output to the colour texture). Once I have created the base Material Function, I can use it to build different Master Materials, such as the Master Material for foliage and vertex blending. To keep the Instances organized and clean, I use "Function Input" nodes as separators. I learned this workflow by watching Kem Yaralioglu's tutorial on ArtStation Learning.
Foliage
I really love creating foliage when making environments. I usually start by blocking out and sculpting leaves and flowers in ZBrush, while looking up references. Once I'm happy with the sculpt, I bake them onto a plane and use Substance Painter to texture. Then I import them into Maya, where I cut and bend the meshes to create different variations of leaves. For some foliage, like grass, I directly model it in Maya and then colour it in Unreal.
To make the foliage look more natural and lively, I use vertex painting on the tip of the plants in Maya to mask the areas that should have movement. In Unreal, I add the SimpleGrassWind Node on the Vertex Colour node to use the masked spots. This adds movement to the foliage on the tip and makes it look like it's blowing in the wind. It's a great way to add life to the environment and make it feel more realistic.
In Unreal I use the Foliage Mode to spread my grass and flowers, as well as my other assets such as bushes, trees or stones. For a stylized approach it’s good to tick off the “cast shadow” field in the foliage box.
Foliage Colour Variation
To make the foliage look like a natural part of the environment, it's crucial to consider the colours that would fit into the scene. As I aim for a vibrant environment, I try to add different colours within a similar range of values. Maintaining a balance between the shapes and colours of the foliage is important to avoid having any plants standing out too much.
I also utilized Runtime Virtual Texture to create a seamless blend between the ground and meshes that touch it. If you're interested in learning the workflow for landscape and foliage setup, I highly recommend watching tutorials by Victoria Zavhorodnia. There are also plenty of tutorials out there for implementing RVT in your environment. This video by Unreal Sensei worked out quite well for me.
Adding Motion To The Scene
Adding VFX to the environment can really bring it to life and create a more immersive experience for the viewer. For example, wind lines can guide the viewer's attention towards the focal point of the scene. As mentioned earlier, adding some wind to the tips of your plants also helps to make it even more lively. I also created some particle effects like falling leaves that would come from the tree, and some flying dandelions that I placed above the grass.
While it's possible to create your own VFX, buying packs of particle effects can be a great way to add extra details without having to dive into the technical aspects of particle effects creation. In my case, I found some butterflies on the Epic Store that fit perfectly into the scene and made it even more lively. So, whether you create your own VFX or buy pre-made packs, adding effects can really enhance your environment and make it more engaging for the viewer.
Tutorials
I mentioned the tutorial for cloud creation on ArtStation earlier, which really helped a lot for getting those fluffy clouds for my scene. For the Shader setup in Unreal Engine, I watched Kem Yaralioglu’s tutorial on ArtStation Learning, which is for free. Understanding the shader setup in Unreal and how to effectively use it, allowed me to create the master material in my scene. Instead of having to create several master materials from scratch, I simply used the one material function that was the base that I used for all the material afterwards.
There is a tutorial for SpeedTree called “Creating Vegetation for Games” by Daniel Peres, which was recommended by my mentor and is really good for getting into the software. Since I haven’t worked in SpeedTree before, this tutorial was well explained on how to start from scratch. I used it for understanding the UI and on how to gather necessary reference so I could build a game ready tree inside the software.
Modular Kit
When I stumbled upon the concept of the houses that inspired me, I did a quick paintover to visualize how many wood planks I would need. To plan the modular kit better, I blocked out the houses in Maya. From there, I decided to include some straight planks and some with more unique shapes in my kit. Later, I imported the planks into ZBrush to sculpt the details. Once I decimated and laid out the UVs, I textured them in Substance Painter.
To add more planks with different variations without wasting additional UV space, I bent some of the straight planks in Maya afterwards. When I imported my kit into Unreal, I started building up the houses and adjusted some of the planks by scaling them or applying colour variation to the textures. Later in the project I also modelled a small boat and some other assets with the same wooden kit by tweaking it in Maya with the bend tool.
Stylized Wind Lines
I don't have much knowledge about Niagara, so I created the wind lines using the Cascade particle system. In Unreal Engine 5, you can use the Cascade system by creating a Blueprint class and adding a particle system in there. Then, under the template I added "Cascade Particle System (Legacy)". To create the wind lines, I followed a YouTube tutorial by Dean Ashford.
Finally, I dragged the Blueprints into the scene and placed the wind lines as guiding lines towards the houses. Even if you're not familiar with Niagara, you can still create great effects using the Cascade system. With a little bit of research and practice, you can make your scenes more immersive with particle effects.
What would you suggest for students when considering adding VFX to their scenes?
First of all, I highly recommend adding VFX to your environment, as it can have a big impact on the overall presentation of your scene. If you're like me and prefer to focus on the art rather than the technical side, I suggest finding a tutorial to follow for creating the base of the desired particle effect. From there, you can make adjustments to the values to make it more individual and tailored to your environment. And don't be afraid to buy pre-made packs from the Epic Store if you don't want to spend time on the technical side. As an environment artist, you usually won't be responsible for the technical aspects in a company, so it's perfectly fine to use packs, as long as you give credit and mention it in your description.
Project Breakdown
At the start of my project, I created several blockout scenes to test which composition would be most interesting. I used basic shapes and moved them around until I had a good feeling about the setup. I also played around with the lighting to see how the shadows would cast. During the process, I gradually changed and moved assets around, sometimes even until the scene was almost finished. From my experience, it's a good idea to try out different placements for assets because it can lead to new insights along the way. Our eyes can get used to a scene, making it harder to spot what needs improvement.
As you can see in my Breakdown GIF, I initially had a tree in front of the house. But after receiving feedback from mentors on the Experience Points Discord, I moved it far behind so it wouldn't compete with the house, which was supposed to be the main focus. After comparing the two variations, I realized that my eyes had adapted to the original placement of the tree. However, moving it to the back made the scene look much bigger and brighter.
So don't be afraid to experiment with your asset placements, and always be open to feedback from others to make your scene even better!
SpeedTree
I just wanted to share with you all that I used SpeedTree to create the trees in my latest project. It was really important for me to learn this software because it's widely used in the industry and has a lot of advantages for a procedural workflow. Creating stylized trees in SpeedTree was a big challenge for me since I used to rely on TreeIt or modelling them in Maya. Don't get me wrong, those methods are great too, but SpeedTree gave me more flexibility and control.
To achieve the stylized look, I used the Node and Freehand Mode to get those curves into the bark and branches and adjust the size and length of the shapes. I also used small branches to generate enough leaves for that puffy look, but be careful since it can increase the polycount significantly. To save on those polys, I hid the small branch nodes when I exported the tree.
For a more stylized look, I maximized the Smooth, Puffiness, and Unify sliders in the leaf nodes. After finishing one tree, you can easily generate many different ones in SpeedTree with the “Randomize” button. Overall, it took some practice and experimentation to get it right, but the results were worth it.
Inspiration
I find inspiration from traveling and the different feelings I experience when visiting different places. I enjoy imagining how the environment would look like in a stylized 3D scene. When creating my environments, I try to envision myself as a character in that world and how I would love it to look like if I lived there. And of course playing games is also a source of inspiration for me; I love the feeling of immersing myself in a new world. I also draw inspiration from other artists' concepts and 3D environments that I see on ArtStation.
Feedback
I received a lot of helpful feedback from my mentors whom I mentioned earlier. If you take mentorships on Experience points, you will get access to a Discord Server where you can also ask for feedback from other mentors, which was extremely valuable during my project. There is also the Experience Points Discord Server which is open to everyone, and I encourage artists and students to post their work-in-progress to get feedback before finishing a project. Other experienced artists may notice important details that could improve the piece, which you might not have noticed.
Additional Advice
Creating 3D environments can be frustrating, especially in the beginning phases when there's a lot of planning, modelling, and texturing to be done before it comes together in the engine. It can feel like there's so much to do with no visible progress. However, the reward is even greater when the scene starts to come together with all the assets assembled, lighting and effects making the environment come to life.
It's important to push oneself in the beginning because it will pay off in the end. Don't give up despite any hurdles or difficulties, as there's always a solution to any problem. It's worth remembering that every artist has their own unique style and that creating something truly unique takes time and effort.
Future Projects
I recently got hired as a junior environment artist at Purple Lamp! I'm beyond thrilled and feel incredibly lucky to have landed this amazing opportunity. I hope to continue improving my skills and working on personal projects on the side. I can't wait to create more stylized environments that transport viewers into another world.
Outro
I want to give a huge shout-out to Experience Points. Their wealth of resources like articles, tutorials, and mentorships have been instrumental in helping me and countless other artists along the way. If you are an artist yourself, I would definitely recommend you joining the Experience Points Discord Server - it's such a fantastic place to meet and chat with other talented artists, get feedback on your work, or simply hang out with cool people!