Using Blender, Substance Painter, Unreal Engine 5, and Quixel Megascans

VIKING SAILBOAT PROJECT

Modelling and UV Unwrapping in Blender

This was a project I worked on part-time in November of 2023. I created a full Viking Ship model and did the UV mapping in Blender, followed by texturing it from scratch in Substance Painter and using a UDIM workflow to achieve higher texture quality. I also created smaller assets to add details to the ship and give it more of a story. This ship was heavily inspired by Viking Longships and so I decided to make assets such as a barrel, sword, axe, quiver, and a Viking helmet. I also textured the shields mounted on the side of the ship separately, to achieve a better result. Lastly, I imported the finished ship asset into Unreal Engine 5.3, where I set up the materials, created an ocean, and used Quixel Megascans to create a detailed environment. This has been my favourite project to work on so far, and I spent the longest on it. I learnt so much about modelling and texturing and it's helped me develop my 3D skills greatly.

For this project, I used Blender to model the entire ship and to unwrap the UVs. For the majority of the ship, I used Blender's modifier stack to accelerate my workflow and achieve higher detail and refinement. I largely focused on keeping my geometry simple, clean and efficient. I managed to keep a good topology throughout the model. The carved front piece of the ship which is often seen in these types of longships was sculpted in Blender and then retopologised to have a cleaner and more optimised, quad-only mesh.

I then modelled small assets to place around the deck of the ship as well as redoing the shields, as I wasn't happy with the original ones I made. I textured these separately and although they were quite simple, I really enjoyed the process of modelling, unwrapping and texturing these.

The UV unwrapping of the model was one of the most difficult parts for me, as I had never unwrapped such a large and complex model, that had specific requirements in order to keep the texturing process inside of Substance Painter straightforward and easy. I learnt a lot about UV unwrapping and found it very rewarding once I was finished. However, I think the UVs of my model could definitely be improved, especially the UVs for the ropes, as they had very fine details and were not just cylinders. The twists of the ropes to make it look more like real ropes, which are tough and can withstand large amounts of pressure, made it difficult to unwrap. However tiling and seams that couldn’t be visible up close, on the ropes, weren't a big worry for me, which made the process much easier.

I used UDIMs to organise my texturing and achieve a higher resolution on my model. I textured different areas of my model separately, this allowed me to get more texturing detail on parts of my model such as the hull, deck, and sail as these are pretty large parts of my model and I wanted as much detail as I could get. This made the texturing process inside of Substance Painter much easier. I ended up using 4 UDIM tiles which each had a resolution of 4K. This enhanced the texturing process greatly.

Texturing in Substance Painter

I used Substance Painter to bake mesh maps and create custom detailed, realistic textures for my model. Substance Painter gave me great control over the texturing of the ship and was incredibly useful in texturing the model in great detail. This was the biggest and most detailed asset I have textured in Substance Painter, and I learned a lot more about the software and improved my texturing skills greatly. Looking back, I wish I had tried different colour schemes, and used more Viking ship references in the texturing process, as I find the finished model to look more like a ship from ancient Greece.


Below are the 4 UDIMs I created in Substance Painter. The textures below are the combined materials which have computed, roughness, normal, albedo, and metallic textures to display the 2D version of the shaded model. 

Environments, Lighting, and Rendering in Unreal Engine 5

Finally, I added a cinematic camera, used the sequencer, and movie render queue, and tweaked the camera and render settings to get the look I wanted. 
Next time, I might try and create a custom cloud system, or make my own volumetrics in Houdini to achieve a more specific look.

Once I had finished creating my ship, I imported it into Unreal Engine 5.3, where I created a small environment to showcase my model. I used Quixel Megascans to quickly build a detailed and photorealistic Nordic environment. I used the Unreal Engine water plugin to easily create a large ocean, and then customise the look to improve the final renders. I used Unreal Engine's built-in lighting and sky systems to make the scene lit up realistically and create clouds and some atmospheric fog.

Previous
Previous

Worldbuilding