The goal of this project was to create a full CG environment from start to finish. The school gave us the task to make it in a "fantasy" style and I am quite happy with the result.
Planning and Layout
The idea for the project started with an awesome concept for a temple by G xy. Immediately a lot of ideas for mountanous tibetan environments came to mind. Researching these environmets and collecting references of the beautiful tibetan nature made me commit to this idea.
Having made a rough blockout of the temple I started blocking out the environment and layout of the shot. I thought about camera angles early on so I could safe myself the time creating something that isn´t in frame anyway. I experimented with different layouts focusing on the rule of thirds, but in the end I went for a shot with a more central composition being heavily inspired by a shot from star wars (ref03 below). It fits the fantasy mood I wanted to capture very well. With assets only in the mid- and background I added a little foreground environment with a pier and some vegetation which gave the shot more depth and helped framing it.
Modeling and Texturing
Modeling the Temple I tried to stick closely to the concept whilst reinterpreting some shapes and angles so they would make more sense in 3d. Utilizing bend deformers in Maya I created this iconic temple roof shape and I decided to push it a bit more than seen in the concept. I used sweep mesh to create the ropes, which are barely visible in the final render, but they were quite fun to make. After that I quickly sculpted the dragon ornaments on the roof in Zbrush. The rest of the modeling process was pretty straight foreward.
The texturing was done in substance painter where I split up the model in sections for easier handling and a faster viewport. I approached the textures layering them as they would be in real life. For the main body of the temple the first part was stone bricks, then came plaster on top with masks to bring back some of the stone from underneath. Next I painted the wall-art and paint streaks on top of the plaster and finished it of with leaks, dirt and a little bit of dust on top.
For the roof material I made copper shingles by varying the hight and color of the different shingles with the help of a tile generator. Then I used anchorpoints to let the dirt, oxydation and waterleaks react to the shingles. The wood with its worn, paint splattered textures shares most of the before mentioned techniques but has some extra moss at the bottom.
To crate the cliffs I started out with a blockout in Maya to get the basic shapes down. I then procedurally shaped and detailed the cliffs in Houdini using masks and noises. I proceeded shading them in Maya blending scanned rock textures with masks I created mixing noises, curvature, ambient occlusion, world space normal, etc. (see below)
For the vegetation I used small plants from megascans, the trees and bushes (except the cherryblossom) were quickly created in Speedtree. After tweaking the shading of all the assets, they were exported as Arnold standin and scattered with MASH on top of a low resolution version of the cliffs. To get some additional breakup on the rock surface and the tower I used Ivy gen to grow ivy branches on their surface and scattered leaves on them.
For the water surface I used a vector displacement map created with Boss. Since these maps require a high amount of Subdivs and the lake in my scene is quite big, I split it up into pieces. The one in the front has the displacement applied and then multiplied with a ramp, so it gets weaker further away from camera. For the piece in the back a normal map was sufficient.
Lighting and Comp
My goal with the lighting was to create an atmospheric fantasy style mood and to archive a similar result to my reference without copying it. First I used a dome and a directional light to establish the general direction. I placed some filler and rim lights to highlight some aspects of the image and used light blockers and custom falloffs to darken other areas. To light up the fog a spotlight was used with a noise pluged into the gobo to archive the Godrays effect.
When it was time to render, I split the scene up into five layers (see below) to control the samples separately. For example more sss and spec for the vegetation, high spec and transmission samples for the water, overall less samples for the background etc. which is very important to save rendertime whilst getting the best possible result. I grouped the lights up and separated them into their channels to have the maximum amount of control at the compositing stage.
In Nuke I started out with bringing the splitup renderlayers back together, made some adjustements to the lights and changed the specularity, diffuse, etc. of some objects using cryptomatte. I added a background image by projecting it onto a sphere and rendering it through my camera. To get a more "fantasy" look I made some particles and brought in some birds to get more life into the scene. Last I did some CC and applied lens effects like chromatic aboration, lens distortion, grain etc.
Conclusion and Takeaways
- Never update working software during a project (or else your water won´t render for days and drive you crazy ; )
- Create all your assets in seperate scenes and reference clean models into a fresh scene for assembly and rendering.
- Procedural shading in arnold is awesome, you don´t always need UVs for everything. But when UVs are needed do them properly, especially with things like brick textures, tile generators, wood etc. that can safe a lot of time later on...
- Using MASH with a lot of different assets wasn´t a great experience, so I probably will look out for other solutions (like Houdini) with my next projects.