Home 9 Thesis 9 Thesis Update – W25-5

Thesis Update – W25-5

by | Jan 25, 2025 | Thesis

Spline Wrap

I started the day with tweaking the spline wrap to get the umbilical animation correct. Turns out I needed to set an up-vector on the spline wrap so it wouldn’t “flip” (you might have seen that artifacting in yesterday’s videos). Now, it’s smooth as a… well, normal, real rope! 

A new render of the rope dynamics in Cinema4d

XPresso Day

My main goal today was to bring all the organs into Cinema4D, place them, and rig them to transform smoothly together. I used very similar strategies as I did for the fetus – User Data controllers, linked to various materials, morph, and visibility changes.

Screenshot of the kidney controller’s XPresso nodes. 

One small issue that I ran into – that really wasn’t necessary to fix for the animation, but I wanted to fix for my quality of life – was the way I handled toggled visibility. For example, I want to be able to toggle the cortex of the kidneys on and off so you could see the internal view. I did that with a boolean (checkbox) User Data input.

However, the checkbox returns either a 0 (not checked) or a 1 (checked), and, when passed to the Visibility parameter, this reads as a 0 (on) or a 1 (off). For turning off the cortex, I wanted the 0 (everything unchecked) to return a 2 (default visibility), and the 1 (anything checked) to return a 1 (off). That’s what those math nodes are – “2-x” – to get to the proper state. If I left it returning a 0 (on), it would override my parent-level control of turning the visibility off, which I predict would be annoying in the future.

Screenshot of the lung controller’s XPresso nodes.

Anyway – enough babbling. Here are my other XPresso node networks for the other controllers. The lung controller (left) just toggles the airways on and off – I need to figure out if there’s a way I’ll be able to morph between them. The geometry is a bit to complex to waste time having a constant mesh between all four set-ups. 

Screenshot of the bladder controller’s XPresso nodes.

The great thing about these controllers is is WIDELY simplifies the animations I will need to do. Take, for example, the ureter morph from the beginning of the week. In order to get that to work, I had to animate a couple of things – 1) the field influencing the morph object attached to the pose-morph tag to give the ureters their “squiggle”, 2) the fields influencing various inflation and deflation of the ureters, and 3) the size of the circle influencing the ureter dimensions itself.

Screenshot of the ureter controller’s XPresso nodes.

Animation tracks of the keyframes for 25-1’s ureter demo.

But now that it’s all linked up in XPresso, it’s just ONE slider! ONE animation track to keyframe! With how complex every transition is (from material changes to multiple pose-morphs and visibility changes), this will radically simplify and un-obfuscate the animation process, and will make it a lot less tedious. 

Animation tracts of the ureter morph for today’s demo – the same action, just a lot cleaner. 

Material Development

I worked a tiny bit on the kidney materials, and linked those into the User Data controls as well. I have yet to transfer the polypainting of the half-kidneys in from ZBrush.

I set this up very similar to the fetus – the User Data controls the color and normal maps. I also set up a slider to control the subsurface scatter color – from a deeper red for a “healthy” kidney, to a more orange/yellow for a sicker kidney. The color is on a ramp, so it can be controlled with a percentage. 

Outer kidney material graph

Normal kidney

Dilated kidney

Cystic kidney

Proof of Concept

With all that put together, I did a quick render of the organs working together. I still have to tweak some of the materials, and figure out a way for the lungs to transition a bit smoother, but I’m THRILLED how easy it is to animate and control! 

As a side note – this tutorial by VirtuallyVisual is a must watch if you’re rendering in Redshift. It cut down my frames from 1min20sec to 20seconds! I will likely bump it up for my final renders, but for these little silly proof of concepts, the time save is priceless. 

Demonstration of all the morphs I set up today.