MARDINI Buzz Honey Setup

MARDINI Buzz Honey Setup

by tomminor 0 Comments

I’ve finally found some time to start uploading my Mardini stuff, but I’ll be starting with my favourite entries first 🙂

Let’s go through how I made this:

Geometry Creation

I wanted an excuse to use the SideFX logo somewhere, with the right effect it stands out more than the rubber toy or pighead! Since this is a honeycomb hive, we naturally get the orange/yellow colour scheme too.

What’s the fastest way to get the SideFX logo as geometry?

  • Make a dense grid
  • Use “Attribute from map” to transfer $HIP/Houdini3D_icon.png to the grid points
  • Blast @Cd.x<1 or something equally lazy 🙂

Our geometry needs a remesh before the next step, it looks *better* if the surface isn’t perfect.

For the honeycomb generation I used Arvid’s fantastic tutorial as a base, I didn’t have to tweak much at all:

The final geometry (pretty dense):

Honey Simulation

Although we don’t see it because it’s a static image, I did try to make the honey as realistic as possible. A critical ‘honey feature’ is the liquid rope-coil effect, seen below:

We can save a lot of effort by simming at a low res, since honey is meant to be incredibly viscous and I don’t need droplets to get the fancy coiling.

I ended up using:

  • Density of 12000
  • Viscosity of 10000
  • No reseeding
  • Slip On Collision Enabled

The effect isn’t actually that obvious in the final result since I dribbled the honey on the edge, but I did keep it in mind for initial tests.

Setting up the materials in Renderman

Most of my MARDINI entries use prman, which may be troublesome if you want to follow the scene as is with a non-commercial license, sorry 😀

This all happens in the /stage context, the actual stage is quite simply (grid, honeycomb geometry, honey sim) so I’m going to focus on the materials.

Honeycomb Shader

Started with a rough glass settings on the shader, using the hexcenter attributes to drive the refraction colour. Adding this faked a deeper honeycomb feel more than using a uniform refraction colour.

This gives us a juicy effect, but it doesn’t show the detail very well. Turning on the diffuse component works, but I only wanted the honey comb edges to be accentuated. Very simple to do, I just use the hex centers as a mask:

Now we get the juicy glass feel, but a fake ‘thickness’ on the edges:

Dripping Honey Shader

Basically the same rough glass shader setup I used as the base of the honeycomb, but applied to the dripping honey geometry

Scene File

Download the scene file from my patreon:


SideFX MARDINI 2021 (Iron Heart / Daily Winner)

SideFX MARDINI 2021 (Iron Heart / Daily Winner)

by tomminor 0 Comments

A few weeks ago I finished the SideFX Mardini Challenge, a month long marathon to submit a new Houdini artifact daily. Each submission was developed and rendered in less than a day – the same as last year’s HOULY challenge.

You can find  last year’s HOULY submissions here!

Submission Contact Sheet

Since I submitted something on time (before midnight EST) I qualify as an iron heart winner, woo!

Here’s a contact sheet showcasing my submissions:

Daily Winner for Day 28 – Earth

I was surprised to be the 3rd place entry for Earth, shown below:

The vast majority of my submissions were rendered with Renderman in Solaris, so here’s the obligatory watermark!

GlobalGameJam “Gnome Comb”

GlobalGameJam “Gnome Comb”

by tomminor 0 Comments

Solo submission to GlobalGameJam 2021, developed in a day. I needed an Unreal Engine refresher and hunting gnomes seemed like a fun idea 🙂

The aim of the game is to find and break as many gnomes as possible until the time limit runs out, imagine the gun is a potato gun and you’re all set!

You can find the GGJ page for it here, which contains source code and download links.

For now they’re also mirrored on my dropbox, but might eventually uploaded these to the site:

Executable Download:

Source Download:

A gameplay demo

Karma Droste Lens Shader (ThinkProcedural Fractals)

Karma Droste Lens Shader (ThinkProcedural Fractals)

by tomminor 0 Comments

More detailed blog post here (still a WIP effect)

A fun test for the Think Procedural January 2021 challenge “Fractals”. The actual fractal is just a raymarched mandelbulb projected as Houdini geometry, if I had more time this would be something more exotic than just a mandelbulb but I still think it looks cool 🙂

The novel thing here is a custom Karma lens shader that gave me the excuse to delve into the SideFX physical lens and modify it a bit.

Here’s an earlier test that makes the effect more obvious

SideFX HOULY 2020 (Iron Heart Winner)

SideFX HOULY 2020 (Iron Heart Winner)

by tomminor 0 Comments

I recently participated in SideFX’s first HOULY Challenge, a month long marathon to submit a new Houdini artifact daily. Each submission was developed and rendered in less than a day, so some entries are a little rough.

Most of my initial submissions were rendered in Mantra, but the last week of submissions use Renderman.

Submission Contact Sheet

By submitting every day and on time, I qualified as an iron heart winner too, yay!

Submissions (click the thumbnails to view the source video/image)

A few of the submissions used Renderman, so I’ll throw the watermark here 🙂

BFX Charity Short: “Pixelbusters”

BFX Charity Short: “Pixelbusters”

by tomminor 0 Comments

I was lucky enough to compete in the 7 week national student competition BFX to produce a short 30 second animated film for a charity, we took a little bit longer to get everything finished but I’m happy with how it turned out!

My roles included

  • Pipeline
    • Required me to write Python/Bash based tools to automate rendering tasks, such as handling the uploading of assets to the renderfarm and submitting the job on the farm itself.
    • Configure SVN on a network drive and encourage the team to use it as a remote backup/version control system.
  • Shading/Lighting TD
    • Shader development & look development for the characters/environment.
    • Lighting multiple shots.
    • Our renderer of choice was Renderman 20.9 (RIS mode).
  • Compositing
    • Involved pulling in the various render AOVs/LPEs and putting everything together.
    • Final grading tweaks.
  • Director

This was my first time using Renderman for a full animation; while we did run into some bugs that caused us some pain, I would hope they wouldn’t happen again now I have more experience with it. I had a lot of fun lighting in it 🙂

Fabric Engine Cloth Simulation

Fabric Engine Cloth Simulation

by tomminor 0 Comments

Why Fabric?

For my 3rd year programming assignment I wanted to find something fun to build – soft body dynamics sounded like a great start :). I’ve also heard good things about Fabric Engine all year and figured I’d have a go at combining the two since (as far as I can tell) noone else has done so, besides the Bullet bindings inside Fabric.



The recommended workflow for adding new systems to Fabric is to create an extension that defines all the custom structures/objects/interfaces in KL. These can then be easily distributed and imported into other extensions or directly into Canvas, where they are exposed as graph nodes that can be chained together.

Although there are plenty of tutorials explaining how to do things purely in Canvas or purely in KL, I found it difficult to find thorough explanations of best practices for things such as writing extensions that will be used in canvas. A lot of time was spent experimenting with what Canvas can do, as it is the main entry point to doing anything in Fabric (and Fabric Splice is deprecated, so going KL only isn’t possible).


For the sake of time I’ve only focused on a very simple spring constraint setup that uses Verlet integration. Right now it only works properly on grid objects, I didn’t have time to implement the topology based constraint setup I planned to use.

Github Source

You can grab the extension code here, it’s still in a rough state and is untested in anything above Fabric 2.1.0 but it should work.