Still life…

•March 3, 2021 • Leave a Comment

Wow, a year since the Covid-19 pandemic started! I haven’t posted here much since then, but I have been creating lots of stuff over at my Artstation page. Here’s what I’m up to right now, creating a still life scene in Toolbag 4. Since I last posted, I upgraded to a Nvidia card that supports realtime raytracing, and I’m enjoying working with it. It feels like the beginning of the end of all of the fakery and hacks we’ve been using for years, and the results are impressive. I took a pass at a tiling pineapple skin this lunchtime:

A reminder…

•March 2, 2020 • Leave a Comment

If it seems quiet around here, it’s worth checking out my gallery at Artstation. I post there more frequently, but more images than words.

Real-time PBR materials reel…

•September 27, 2019 • 1 Comment

Last night I demonstrated some of the real-time PBR material work I’ve done over the past few years at the 3D Camp/Irish VR meetup in Workday, Dublin. All of the clips were rendered in Toolbag 3.

Tiling geometry to create PBR materials…

•September 5, 2019 • Leave a Comment

Lots has happened this year, some good and some bad stuff and I’ve been neglecting this blog a bit. I post more on Artstation these days, but I like to keep the blog separate for deeper dives into my work. So, it’s the blog here for behind the scenes/breakdowns and the Artstation page for at-a-glance final images and portfolio.

I tried some experiments over the Summer with procedural scattering in 3dsmax to create tiling textures, kind of like Substance Designer but in full 3D. This has pros and cons but I’m encouraged by these tests and will definitely use the technique again. The workflow is basically create a number of models, e.g. stones, pebbles or grass blades, scatter them across a noisy plane primitive using PFlow or Hair and Fur in 3DSMax, then run a maxscript to chop, repeat and tile them along the border creating a seamless high poly tile. From that, the usual textures can be rendered off, height, normals, AO etc and used to create materials. Here’s my attempt at some lawn grass using this technique, rendered in real-time:

Rendered in Toolbag 3


•March 9, 2019 • 1 Comment

Everyone loves free stuff right? Well, I’ve put some of my recent texture work on Gumroad, where you can download it for FREE! It’s a 4K seamless moss material, approximately 30cm x 30cm, rendered below in Toolbag and Blender. Check it out at the link below

Close up
Context render on some draped geometry
Wet and dry variants
Material breakdown
Rendered in Eevee in Blender 2.8

Into 2019…

•February 9, 2019 • Leave a Comment

I meant to close off last year with some posts over the Christmas break, but I went something of a PC detox, I didn’t make any new art and frankly, just enjoyed time away from the screen. So, Happy 2019 I guess, and here’s what I’ve been messing about with since the last post! I’ll go into more detail next time, this is more of a recap as I haven’t posted in a few months. I’ve been a bit lazy in only posting images to my Artstation page and not writing about the actual projects.

I did some further work on fallen Autumn leaves, using Artomatix for tiling but this time using a compact 20mp point and shoot camera instead of a 12mp phone camera to try and up the quality:

I also finally looked at Blender! I’ve been threatening to for a while but the gorgeous real-time Eevee renderer in Blender 2.8 really caught my attention, so I’ve started to feel my way around it, with some great help from Fin O’Riordan

I mainly brought over assets I’d already modelled and used Blender to construct materials, then light and render the results, here’s what that looked like:

Blender 2.8 video capture
This is rendered in Toolbag 3, for comparison
Texture breakdown

This also led to some further experimentation with texture capture from the real world, again using photographs, but not photogrammetry. I think it warrants it’s own post as refinement continues. Here are some early results of this work, with the bonus that I can now capture decent translucency from thin objects, like these leaves and crackers.

More to follow soon, thanks for reading.

Soft underfoot…

•November 13, 2018 • Leave a Comment

A quickie environment material, shot at a bus stop in a leafy area. The camera was on burst mode, so it took a load of photos every time I clicked, I wasn’t sure what was up with it when it took so long to respond! The pictures weren’t super sharp, but weren’t as blurry as I suspected they might be from the handheld movement. All rendering is real-time in Toolbag 3, here’s a sphere with the end result:


Applied to a ground plane for context:


Here’s the initial tessellation of the ground plane, I kept it flat as there are pools of standing water among the leaves, and adding noise into the ground plane curved the water surface and looked bad. I used the useful “water level” node in Substance Designer to add the water puddles and have all maps updated automatically. There was a slight slope to the ground I shot, and this was reflected in the height map, so I went back into Knald to generate a “flatter” height map from normals. This worked better with the puddles. Designer was also used for AO cancellation in the albedo and to correct texture values for PBR.


Further tessellation of the ground with Toolbag’s PN triangles.


Added sub surface scattering to catch the seasonal low sun light:



Now with bonus ambient sound! (Thanks YouTube!)

Wood shavings…

•November 5, 2018 • Leave a Comment

Not much to this material exercise, it’s a spin off from something I needed for another personal project. It’s based off extruded helix splines in 3DSMax, with added rigid body dynamics and a simple stacking simulation to settle the coils. Missing detail was filled in with Artomatix, on top of seam removal. This has limited usage but was decent background filler for what I needed, I’ll be posting more about that soon.


Meat and Camera, raw…

•September 12, 2018 • Leave a Comment

I missed blogging last month, despite having worked on a bunch of stuff since my last post. I’m actually posting over on Artstation more often than here, but it’s mainly images, I’m trying to ensure that my posts here have more meat on the bones, if you’ll pardon the pun, so here we go!

There’s a mat in the bathroom at home that sits under the sink, it’s a sort of towelly material, with fluffy tendrils. I’ve looked at it many times and wondered if it would be possible to scan with photogrammetry, although subjects with tendrils are usually very difficult to work with due to occlusion, this particular mat had been washed and dried and trampled on many times, and by now the tendrils were limp and compacted. I was pleased with the attempt, from about 40 photos taken on my phone and Reality Capture. Everything below was rendered in real-time in Toolbag 3:

The AO worked out well, as the mat was basically a uniform hue, all that was really captured in the input images was the pinkish colour and ambient shadows, so I desaturated this and blended it over AO generated from the high res scan geometry. Upon inspecting the normal and height maps generated, they looked like they could serve well as a basis for some sort of gooey entrails or noodles, so after removing texture seams in Artomatix, I set about playing with roughness values to suggest a moistness to the surface.

This is where it started to get interesting 😀 By shifting albedo hues around and pulling away the roughness I started to get something that resembled raw minced meat, Vegans look away now!

The great thing about tiling textures is that you can use it across different models arbitrarily, once the UV’s are well laid out or tri-planar mapping is used. I modelled a basic cone shape and used an FFD in 3dsmax to pull it into something that looked like it had been kneaded by hand. I then unwrapped the model so that the UVs warped nicely around the top of the cone and applied the material. Some sub surface scattering also helped bring realism to the material. I’m also trying some new secret sauce with lighting that I think is bringing something more to my renders.

I worked into the albedo and roughness textures to bring it closer to the feel I was looking for, and although this was supposed to be a material creation exercise I modelled up a chopping board and some paper to place it on, along with a granite style worktop, which was just a plane with some stock textures from Adding some grease and seepage onto the paper really helped with ickiness!

Here’s the material again on what is basically a chamfer box primitive with some slight cellular displacement.

The base geometry:

Here’s the texture breakdown:

After looking at this for a few hours, I actually started feeling a little sick, so I thought I’d have some fun with the material, like what if it wasn’t quite ready to be cooked up?

Maybe take a look with a phone camera?

Or, what if it was like some sort of slowly oozing mince volcano? (Needs sound!)

What if it was some sort of monstrous shape, like a fresh zombie human head? :O

Rendered to a 32bit EXR and tweaked in Photoshop:

If you’re not grossed out by now, I’ll have to work harder next time! Interesting experiment though, taking textures created from one 3D scan and using them to create a completely different look on another.

6th Century Stone…

•July 25, 2018 • Leave a Comment

Here’s a proper blog post for this month 😀

A year or two back, I visited the hillside ruins of a 6th century monastery in Cooley, on the Inishowen peninsula in Donegal, Ireland. It’s an overgrown graveyard now, and among the ruins there is a well-preserved 10 foot high cross and a few free-standing church walls. Perhaps most notable is a “Skull House”, fashioned after the Beehive huts of Ireland’s early monks, reported to contain the remains of saints, and up until recently human bones could be seen through a small aperture in the wall.  I respectfully set about making a scan of the Skull House, but my fully charged phone mysteriously died and wouldn’t turn back on. Back to the car to charge it and I manged to switch it back on, but the battery level had dropped by half, weird! There was enough charge left to take the photos I needed, hampered only by height and foliage on the sloped roof. Here’s how it looked:

As with every 3D scan like this, the textures are bound to the geometry created, but I wanted to create a material from the Skull House that I could use on any model, so to be practical it would need to tile and I’d also have to repair the occluded areas, mainly the grass and mossy clumps. As a starting point, I rendered off the raw geometry in 3DSMax as diffuse, normals, AO and z-depth (for height) for each side and combined each wall into a single texture, then ran it through Artomatix to mutate the missing areas. It became clear that I’d have to paint a structure guide to help the mutation process, as it seemed to produce weird melded stones rather than fully separated stones. A structure guide basically means painting an outline for each brick, which in this case was time-consuming and problematic due to the variation in stone size and years of moss growth. To fix this, I displaced a plane with the seamless height map from Artomatix in Mudbox and sculpted into the gaps while sharpening up stone edges. This broke the tiling from Artomatix but I was otherwise happy with the look. I also worked over the grassy clumps and overhangs in 3DSMax using both Max’s hair and fur modifier and some hand modelled grass blades. Some shadow removal and adjustments to the albedo and an eyeballed roughness map in Photoshop and here’s what I came up with:

The next part, was to test against some proper geometry, which would have be low poly but with even topology, as I would be using displacement and tessellation and with as few sharp corners as possible to avoid self-penetration when vertices were displaced. UVs are important too, orientation and continuity ensure that the grass and moss are properly placed. This is some quick low poly geometry I created that approximates the shape of the original Skull House

Here is the same scene with the tiling material applied, click on the image for higher res. The ground material in these shots was created with Quixel Mixer, based on Megascans

With daytime lighting 

So even though the texturing is now less specific, with far less moss and grass to see, it works around chamfered corners and on different models as long as the UVs are carefully laid out, every break in continuity can cause a model to crack along seams.

I couldn’t help but be reminded of the stonework of the “Beehive hut” monastery on the Skelligs, also from the 6th century and location for Luke’s home on Ahch-To in the new Star Wars movies. For a further test I used a hemisphere primitive, cut a shape for the door and lintel and extruded a small piece at the side, again avoiding splits in the UV islands where possible. The more detailed geometry in the background below is just for decoration. Here is the scene without textures:

Here it is with the material applied:

And with a little more atmosphere, inspired by the movie Prometheus:

In motion with some rain effects added in After Effects:


Bonus content: I also scanned this at Cooley Graveyard: