design + motion

Play

Discovering Sticks

It's been over three years since the start of the pandemic and my homeschool and childcare responsibilities have steadily diminished. The house is quiet during the weekdays and I'm back to making animations at my computer. It’s comforting to be back to a familiar routine, but what used to motivate my creative work was left behind with my pre-pandemic life.

The view from our living room.

Somewhere between frantically learning how to teach Montessori lessons at home and sending my youngest off to pre-school, I learned how to use tools and build furniture. With traditional hand tools I was able to work quietly inside of my house while my son clung to my leg or slept in his crib down the hall. Woodworking was a way that I could help improve our home, watch the kids, and fill the creative void left behind by my career.

Exploring shiny objects in my tool chest.

Tech equipment eventually started moseying its way out of the office and into storage. The empty space was filled by a 300 pound maple workbench, cabinetmaker's tool chest, and a healthy stack of lumber. A sign that I was on the right track was when hurricane Ian visited Raleigh and kindly dropped off a large poplar tree in my back yard. It destroyed our roof but it also introduced me to green woodworking and staked furniture — a rabbit hole I’m just now beginning to explore.

A procedural stick chair generator inspired by Chris Schwarz’s Stick Chair Book.

My need to sit quietly at the computer, learn, and be creative is something that will never go away, but I’m grateful to have discovered a new passion that will undoubtedly accompany me for the rest of my life.

James Tupper
Creature Experiment

After tinkering with this project off and on throughout the year, I’ve finally decided to put it to rest for the time being. This little creature began as a concept in one of my Houdini classes earlier this year and eventually made it’s way into a client project. It originally began while learning how to make basic copies in Houdini and served as a canvas for me to experiment with particles, dynamics, and CHOPs.

Below is some of my research into creating a procedural creature that is animated without the need of keyframes. The user inputs a single contour line and a motion path if desired and the creature wiggles it’s way from point A to point B. Most of the motion is accomplished in CHOPs, but it also place nicely with vellum for an added layer of dynamics.

General breakdown and additional experiments with particles and vellum dynamics. Using velocity as a particle emission attribute can create some believable air bubbles.

The rig is based around a method of staggering channel data across time in CHOPs (major credit goes out to cgwiki for getting me started with this concept). Essentially, if you have a line with ordered points, you can offset their attribute changes, like @P, by a specified number of frames. If you are familiar with something like the lag effector or jiggle deformer in Cinema 4D, this method can create similar effects. But since we’re in Houdini, we can take it much further and apply things like weighted noise and amplitude to each point. In this instance, each tendril has a ramped attribute that dictates how ‘laggy’ it should be.

Originally, I bundled all of the motion into CHOPs, however, I ended up simulating a ‘spine’ in vellum to have much finer control. Because it was only a few points, the simulation generally happens in real-time.

For now, my creature is destined to whither away in the ‘Houdini experiments’ folder, but I’m happy to have taken the time to share some of my work as this has been an enjoyable process.

James Tupper
Freelance

Freelance began as a doodle of me running. At the end of an intense two months of visual effects training at at CG Master Academy, I decided to step away from my computer and practice some drawing. My only motivation was to take a short break from 3D / VFX and practice some hand-drawn animation.  

A few (obsessive) weeks later, I was left with an animated short film that dealt with the passions, challenges, and insecurities I have as a freelance motion designer. I’m in no rush to drop 3D, but I’ve found value and joy in creating art in a medium where I’m not burdened by previous knowledge or experience.

Process

I used my iPad equipped with Procreate and Rough Animator as the main tool for this project. I had to learn some basics of frame-by-frame illustrations as I went, but the iPad made it easy to dive in.

Most of my time was spent in Rough Animator.

 
The application UI and still objects were created in Procreate.

The application UI and still objects were created in Procreate.

 

Procreate has some cool features that made it easy to draw tiny UI elements.

 

After many failed attempts at hand-drawing the cube animations, I eventually opted to create them in 3D and then add the analog look in post.

 

Scrapped sketches from my original running concept.

 
The catalyst for the final concept was this sketch that my brother made of me back in ‘97. Not much has changed.

The catalyst for the final concept was this sketch that my brother made of me back in ‘97. Not much has changed.

 

Now back to Houdini.

James Tupper
Texturing Low Viscosity Fluids

I’ve been researching different ways of blending surface textures and getting them to stick to low viscosity fluid simulation. Unlike lava or melting wax, chaotic fluid simulations can be an enormous headache to texture. There is no perfect answer to maintain a smooth and consistent surface texture through an event like a big splash. However, I’ve found that using triplanar noise mapping offers a good balance of natural results and quick implementation.

These are some experiments using Redshift’s triplanar functionality to procedurally map noise to the surface of a fluid simulation.

With triplanar mapping, the initial style of the surface texture remains relatively consistent throughout the entire simulation. Only a single rest position was used in this instance.

With triplanar mapping, the initial style of the surface texture remains relatively consistent throughout the entire simulation. Only a single rest position was used in this instance.

All texture and displacement maps are created procedurally using Redshift’s built-in noise.

All texture and displacement maps are created procedurally using Redshift’s built-in noise.

Displacement tessellation allows surface detail to hold up under intense scrutiny.

Displacement tessellation allows surface detail to hold up under intense scrutiny.

Notes

  • A render engine that supports triplanar noise mapping is required for this technique.

  • Multiple rest positions are not needed. However, for best results, it’s good to blend to a new rest position during major mesh deformations.

  • Mesh density can contribute a lot to flicker amount if you are using displacement so adjust accordingly. I’ve had best results resmeshing the surface with adaptive mesh settings disabled.

James Tupper
Particle UV Blending

This is a system I’m working on that tries to maintain the natural movement of surface UVs on a noisy particle simulation without setting up rest positions.

It can be used to add and blend textures on continuously evolving fluid surfaces and produce organic effects like liquid gold, glitter, and paint swirls.

Notes

The main idea here is to assign attributes to new particles in a simulation, and then kill them before they have time to thoroughly mix with other particles from differing birth times. This is achieved by spawning particles with short lifespans on a predefined path. New particles inherit UVs from the input path and then die before they have time to thoroughly mix with other particles. The result is an organic particle sim where all neighboring particles have similar attributes (like color and UVs).

This method can be used in instances where the dual-rest solver produces an unwanted blending effect on a chaotic loop of particles.

It also works well with using source imagery to generate custom color palettes for the blended textures.

 

I initially started developing this for my personal project, From Earth, but didn’t finished it in time to make it into my animation. It is not as precise as something like a dual rest system, but it’s nice for quickly getting a bump map to stick to a chaotic particle mesh.

James Tupper
Blooms

This is a series of procedural creatures inspired by different life-forms found in the deep sea. I defined key characteristics of certain creatures and re-imagined them as if they were coming to life in the sky. The system generates organic forms and motion from one or more input curves.

Stills from this project will be on display in Los Angeles, CA on June 8th 2019 at The Art of Creative Composition show hosted by CGMA.

Animation

I am currently experimenting with different movement styles that resemble things like sea plants and jellyfish. Above is a look at the basic structure of an animation rig. The only user input is the motion of the initial NURBS curve.

This code adds weighted ramps to the input curve which allows me to control how “laggy” the tentacles are while they are in motion

This code adds weighted ramps to the input curve which allows me to control how “laggy” the tentacles are while they are in motion

Higher values on the curves will make the tentacles stretch more as they increase in velocity. The above setup limits the stretching to the ends of the tentacles.

Higher values on the curves will make the tentacles stretch more as they increase in velocity. The above setup limits the stretching to the ends of the tentacles.

James Tupper