Website powered by

A Hobbit Hole

This is an adaptation of a previous still/concept that I've put together some years back. Since then, I have visited the place in person and wanted to revisit it in UE4. The diorama is my humble homage to my favourite place on the planet - New Zealand, and what I believe to be the best trilogy in existence - The Lord of the Rings.

This work marked a return to to environment art for me, and CG in general, so I wanted to test out some of the workflows I've read about in various posts on artstation and 80.lv. I tried to stay close to the original (as per reference) but naturally modified bits and bobs where I thought they were a bit dull or uninteresting, this particular hobbit hole has been modified quite a bit in real life, so let's chalk it up to that!

My main focus was on using tillable textures and masks on bigger objects, so that the texel density matched the uniquely painted objects for that lush overwhelming amount of detail. For my plants and textures I relied on megascans and substance source. Modeling and UVs were done in Blender, I also used the HardOps addon for normals and bevel management, final render is done in UE4 with fully dynamic light. In hindsight I wish I invested in an RTX card.

I am no director! My aim here was to put together a slow pan through all the main areas of the scene, almost like extended screenshots.

Here are some of the uniquely painted assets from the scene. I went for a relatively low poly geo, but aimed to retain silhouette where it mattered.

Here are some of the uniquely painted assets from the scene. I went for a relatively low poly geo, but aimed to retain silhouette where it mattered.

Textures were painted in substance painter with the help of substance source. I mostly stick to basic materials with custom masking.

Textures were painted in substance painter with the help of substance source. I mostly stick to basic materials with custom masking.

I took a standard approach of baking from hi poly. Had tons of fun sticking the zigzags to the HP model of the bell. I also wanted to make sure my normals don't have banding, so I can correct them manually if need be.

I took a standard approach of baking from hi poly. Had tons of fun sticking the zigzags to the HP model of the bell. I also wanted to make sure my normals don't have banding, so I can correct them manually if need be.

Poly difference between HP and LP was causing some normal banding, so having clean smoothing made it super easy to adjust in PS.

Poly difference between HP and LP was causing some normal banding, so having clean smoothing made it super easy to adjust in PS.

I went a little heavier on texel and tris density and with this particular model (for it's size) as I knew I'd have a couple of beauty shots and close ups.

I went a little heavier on texel and tris density and with this particular model (for it's size) as I knew I'd have a couple of beauty shots and close ups.

on the flip side, there were assets I did not think would be very prominent, so I just mirrored the UVs and made sure image is instantly readable. I also did some normal editing to round off the edges without baking.

on the flip side, there were assets I did not think would be very prominent, so I just mirrored the UVs and made sure image is instantly readable. I also did some normal editing to round off the edges without baking.

Once gain, some mirror UV mapping to make the most out of that one small texture.

Once gain, some mirror UV mapping to make the most out of that one small texture.

For some assets, I did partial texturing and custom mask exports as I knew I wanted the option to experiment with colour. of the windows in engine, or maybe even adding emission for an evening scene.

For some assets, I did partial texturing and custom mask exports as I knew I wanted the option to experiment with colour. of the windows in engine, or maybe even adding emission for an evening scene.

For the main pieces of geometry, I knew I was going to use tiling materials and decals, so chose to round off the edges for nice smooth light interaction and organic feel. UV mapping was a big consideration to make sure wood grain flowed nicely.

For the main pieces of geometry, I knew I was going to use tiling materials and decals, so chose to round off the edges for nice smooth light interaction and organic feel. UV mapping was a big consideration to make sure wood grain flowed nicely.

As with the watering can and bee post, I  used some normal editing to get this nice rounded edge with just a single bevel.

As with the watering can and bee post, I used some normal editing to get this nice rounded edge with just a single bevel.

All in all these are all the individual assets I've created. Most of the texturing was done in substance, however much like my stones and vegetation, some of the tiling materials were taken from megascans.

All in all these are all the individual assets I've created. Most of the texturing was done in substance, however much like my stones and vegetation, some of the tiling materials were taken from megascans.

This is perhaps the only unique texturing I did for the large scale geometry, I just threw it all quickly into Painter and painted on some dirt and edge damage masks to break up tiling and breath some life into the brick and wood.

This is perhaps the only unique texturing I did for the large scale geometry, I just threw it all quickly into Painter and painted on some dirt and edge damage masks to break up tiling and breath some life into the brick and wood.

This is how the mask would later be used in engine, some basic noodles to add darkening and highlights as needed

This is how the mask would later be used in engine, some basic noodles to add darkening and highlights as needed

Since I could not get the "overhang" effect with regular landscape in UE4, I resorted to creating it as dedicated geometry. This presented it's own set of challenges as far as layer painting goes. More Noodles...

Since I could not get the "overhang" effect with regular landscape in UE4, I resorted to creating it as dedicated geometry. This presented it's own set of challenges as far as layer painting goes. More Noodles...

This is the basic setup of my layer, which I incorporated in a function for simplicity. Nothing fancy, just basic basic material with parallax. The funky metallic output can be ignored if you're looking to replicate it, I was experimenting with channels;)

This is the basic setup of my layer, which I incorporated in a function for simplicity. Nothing fancy, just basic basic material with parallax. The funky metallic output can be ignored if you're looking to replicate it, I was experimenting with channels;)

This is how the functions would then be fed into the main material. I am particularly happy with the IF setup for blending layers, it really helps breaking down those ugly vertex paint edges by introducing noise in values that are not 0 or 1.

This is how the functions would then be fed into the main material. I am particularly happy with the IF setup for blending layers, it really helps breaking down those ugly vertex paint edges by introducing noise in values that are not 0 or 1.

and the final bit where tessellation comes in. As you will notice, it's driven by one texture for the whole mesh as it was only displacing larger values, small details are taken care of by parallax in the function.

and the final bit where tessellation comes in. As you will notice, it's driven by one texture for the whole mesh as it was only displacing larger values, small details are taken care of by parallax in the function.

Overall I am very happy with the effect, especially that I can reuse the material and just change functions to paint walls or other assets. Only caveat being that layers have to be painted in order.

Your's truly among all the reference material I could want

Your's truly among all the reference material I could want