Craggy cliffs…

•April 13, 2018 • Leave a Comment

This material was scanned near Malin Head, Ireland’s most northerly point last week, on this beach near the “Wee House of Malin”

I brought the DSLR this time, and I there’s a healthy increase in quality over some of the phone stuff I’ve been doing lately. From 50 odd photos, I should be able to create three separate tiling materials, the first of which is a craggy cliff like material made seamless in Artomatix. Here’s the obligatory material sphere:

And the breakdown (roughness was constructed by hand and the height map was done in Knald, everything else was baked from 3DSMax)


The whole idea of making seamless materials from 3D scans is so that materials can be decoupled from geometry and used elsewhere arbitrarily, in different scenes and lighting conditions. Here’s an example of some simple geometry:

This is how that same geometry looks with tessellation and the material applied (rendered in Toolbag 3, as ever)

I really need to stop making rocks. 😀 Here’s a video, you’d be hard pressed to spot the seams.


Seamless Autumn Leaves Material…

•March 24, 2018 • Leave a Comment

This post is about further experiments with Artomatix and 3D scanning to create usable, seamless PBR materials. A few months back I was standing at a bus stop for what seemed like ages and got really bored, so I took out the phone and started taking photos of the ground around me. There were a lot of fallen leaves  around the bus stop, mixed with overgrown ivy and weeds. I took about 20 photos and loaded them into Reality Capture that evening just to see if anything could be made of them. I wasn’t expecting great things due to the small number of photos I had and the half-arsed nature of the shoot, and indeed results weren’t perfect, some leaves were nicely sharp but others were a blobby mess or missing completely. I still baked down the geometry to diffuse, normals, height and dropped the normal map into Knald for quick AO and cavity maps. There wasn’t enough usable info to make a square texture, I settled for bakes of 4096 x 2048. I stuck the assets in my “partial scans” folder and left it for months, until this week.

Artomatix came to the rescue, after duplicating the original textures and laying them out side by side in square 4K textures with very obvious repeats, I loaded them into Artomatix and was able to crudely mask out the problem areas and generate a tiling material from the 3DSMax bakes. I also saturated the diffuse to create a sub surface scattering map on the fresher leaves. Height could be better so I’ll revisit when time allows. This is the albedo input, the painted mask and the output from Artomatix:

Here are the results, all rendered in real-time in Toolbag 3:

Base geometry in Toolbag 3

Base geometry with material applied

Material Sphere

Material sphere texture breakdown

Lighting tests

Video (watch in 4k where available)





The 60 Minute Cave part II…

•March 8, 2018 • 2 Comments

Quick post – some time ago I made a post on here about making a simple cave in 3DSMax in an hour over lunch. This evening I did something similar! I’ve been playing with Artomatix, as per my last post and I was pleased with the results of an experiment tonight and thought I’d post the results here. I had a partial scan that hadn’t resolved well  it was wet rock on a very sunny day so large areas of detail were missed or were blurry. I baked out what I had in 3DSMAX, diffuse, normals, AO, height and a shadow map used to help with manual de-lighting in Photoshop. I ran these textures through Artomatix for seam removal and it tiled them quite nicely. After some tweaking, I applied the material to a sphere in Toolbag 3 and tested out some lighting environments, before applying the same material to the inside of a curved cylinder and tiling appropriately, to make the cavernous environment you see below. Not bad for a single material!


Seamless Materials from 3D Scans in Artomatix…

•March 2, 2018 • 6 Comments

I’m starting this blog post on Thursday 1st March 2018, the evening when “Storm Emma” and “The Beast from the East” clash over Ireland causing blizzard like conditions and Wintry landscapes not seen in this country since 1982. Public transport is suspended, many people are off or working from home, and the public have been advised to stay indoors until the Red Weather Alert lifts some time Friday evening.

With all this time indoors I’ve had some time to process scans and create materials, and put Artomatix through it’s paces. Based here in Dublin, the Artomatix app is currently in an alpha state, but already functional and promises to automate “the most time consuming, repetitive tasks creating time for artists to focus on what really matters,” – music to my ears. It’s not procedural, like Substance Designer, but uses a different approach, example-based creation. I’ve run a few scans through the software already, mainly for “texture mutation” which creates variations of a texture or multiple textures simultaneously as part of a material, and also for seam removal, making textures tile. These automatic processes can be controlled somewhat by moving jitter sliders and painting ignore masks, handy for removing blurry areas or scan artifacts. This could be really useful for making partial or unsuccessful scans usable as world textures.

The first of this series of materials from scans was some earthen rubble (blogged about previously here ) in a wheelbarrow I shot on my phone one afternoon. The scan itself worked quite well in places but needed a lot of filling in, and of course parts of the wheelbarrow removed. This would usually have to be done manually in Photoshop or Substance Painter. I imported the textures into Artomatix as a material and connected up Texture mutation and Seam Removal nodes and after a few minutes of communicating with the cloud, my textures were ready to preview. Here’s what Artomatix looks like right now, it’s still in alpha so this is likely to change, albedo input on the left, 3D preview on the right and node graph beneath:



Here are the input textures, and their Artomatix seamless versions:








Height (not apples to apples, as I used Knald in the end to generate height from normals)BarrowRubble_height


Here is the result, rendered in Toolbag 3




Another variation, same inputs


Finally, in realtime on Sketchfab, this one is tiled less than the Toolbag versions:



PS: Unrelated, but I couldn’t let this frozen weather pass without trying a bit of photogrammetry 😀 Quickly rendered in Toolbag 3 with some SSS for the snow.






Charred For Life…

•February 20, 2018 • Leave a Comment

This charred wood material is based off a burnt damp log I found in the garden, it had been partly used as fuel in a chiminea last summer. It was charred and ashen on one side, the side that was facing the ground, so it had some mud and bugs stuck on and looked great in the light of day – there was an almost iridescent effect on some surfaces of the flatter areas of the burnt “cells”. I tried to recreate it by firstly scanning the burnt end, no fancy setup, just my phone (a Samsung Galaxy S8) and an overcast day. I took about 80 photos and processed in Reality Capture, as usual. I baked down textures in 3dsmax, using Photoshop to clean up and Substance Painter to clone out missing detail. I layered in a hint of rainbow gradients in the albedo and painted a custom metalness map to help simulate the iridescent sheen on reflections. AO and cavity maps were created in Knald, which were useful in roughness and emissive textures later. The material is rendered below in real-time in Marmoset Toolbag 3 on the stock UV sphere.

To achieve the glowing embers look below, I inverted the ambient occlusion map and used it as emissive, tinting it ornage in the Toolbag shader. Some local bloom and post FX finished off the effect.

Texture breakdown below.

His Bark Materials…

•January 30, 2018 • 2 Comments

This year I’m going to try and blog every month. I was doing well for a while but got busier last year and didn’t get to it as often. So, here’s the first post of 2018, some material work. Specifically, phone captured scans of real world tree bark, conformed to be seamless, tileable and usable arbitrarily on game world models. There is some amazing material work being done in Substance Designer these days, and I’d like to incorporate that into my workflow at some point. The bark material below is a proof of concept, a number of 2k textures extracted from a 16k source image and a 20 million polygon model. These were derived from photos taken on my phone and processed in Reality Capture. Textures were baked in Toolbag 3, apart from the albedo which was baked in 3DSMax.  Here is the high poly model, the bark was splintered and raised away in places and it captured well for the most part. There is a lot of potential in this capture and I think a really good use case to give Artomatix a proper try.


Here is a breakdown of the textures, eyeballed for metalness PBR:

Here is the result when applied to a sphere in Toolbag 3


Digital Human Experiments…

•November 23, 2017 • 6 Comments

Took me a while to get this update together! This time, I’d like to share an experiment in single camera photogrammetry. I was very inspired by some of James Busby’s recent work on Sketchfab, so much so that I went back to try scanning with another human subject. My Dad dropped by the house one evening and I asked him to sit for me outside, just as the light was fading. I was fairly sure the effort would be wasted due to the failing light, but photogrammetry has surprised me before, so I carried on. I shot about 45 photos in raw, handheld on my phone, a Samsung Galaxy S8. From there, I processed the raw files in a free version of DxO, removing vignetting, chromatic aberration, shadows and highlights where possible, but keeping distortion. Here is the mesh output on normal detail in Reality Capture.

Results out of the box showed some promise. Overall form and volume were there with some detailed areas around the eyes quite well defined. Lots of noise too though, a chunk missing under the chin and nothing at all from the ears back. All in, there was a count of about 45 million triangles.  Generating the albedo texture helped the visuals a lot (see below) but I knew there’d still be cleanup in Mudbox, which has good hole patching for geometry. The relax, smooth and scrape brushes also work well for reducing noise in rough areas.
I used Instant Meshes to retopologise the high poly mesh, it can be a very handy tool to put out an all quad mesh to work with in real-time, here’s how the model looked, I also replaced the eyes with proper spherical eyeballs.
I laid out UVs on the low poly mesh in 3DSmax and baked albedo, thickness and normal maps from there, over then to Knald to generate high frequency detail normals, AO and cavity maps. Substance Painter and Photoshop were used to paint out shadows and highlights and fill in gaps in the textures, and hand paint specular and glossiness maps, to control which parts of the skin would look oily. I used Marmoset Toolbag 3 for look development, check out some of the textures below.
I still needed something to cover the large hole in the back of the mesh, I scanned a fur lined hat and tried to make it fit the head but I wasn’t happy with the results, I had to deform it too much to make it fit (image rendered in Toolbag 3)
I also tried a metal morion helmet I had already made, but it wasn’t great either and hid too much of the model underneath (image rendered in Toolbag 3)
So I ended up modelling a tight fitting wooly hat over the top of the head and textured it traditionally, and I was a lot happier with this. Here is the head model screen grabbed from Sketchfab:
Another (Sketchfab) image including the hat:
And finally the model in real-time, you can orbit by left-clicking and dragging or move the lights by holding alt and left-clicking and dragging. There is a very simple eye movement animation and a roll of the jaw, I’d love to try some more with facial rigging after this but it’s an area I know very little about. Lots learned from this one!

Bonus: Blooper with displacement on the wooly hat 🙂