Animate a Jellyfish in Motion [Animal and Creature Animation - Unit 12]

Animate a Jellyfish in Motion

26/04/24


Introduction

So here we are at the last unit in the module! Its been quite the journey and I feel like I've learnt a lot about animal and creature animation that I have applied to the units and my own outcome of the dog ball catch animation. This last unit explored a jellyfish animation that was a completely different type of creature locomotion again. The rig provided was a weird little jellyfish creature with little tentacles/tendrils hanging down and a silly looking human-like face. I wanted to create a pretty silly cartoon like animation to match the rig for this creature and have a little bit of fun with it too! So lets dive right in!

Project Management

The image below shows my remaining tasks for the module. I tend to work very agile and add tasks to my backlog or weekly to do as they are needed and to help me remember important things I want to do before I submit. I have moved the scorpion and FX animations into the backlog as I still need to return to turn my notes into a full blog post when I am able to move my arm again after surgery. I could use speech to text, however, its difficult to edit what comes out and my brain processes my thoughts better when typing to present a higher quality presentation of processes.

Currently in my backlog I have a range of tasks. These include the final export of my module showreel with accompanying pdf to demonstrate my practical skills; submission of this showreel and pdf physically on the Canvas system; updating my public YouTube video descriptions to reference all assets I've been using; update the notes on my raven blog post to show the recent exploration of this animation in a scene; complete blog posts for the scorpion and grass FX; add captions to the visuals on my blog to make the images and visuals easier to understand; ensure my blog is correctly Harvard referenced and finally prepare my blog for submission! Quite a lot, however, a lot of these are relatively small tasks and are just reminders to myself to help me stay organised and ensure that my submission for this module is the best it possibly can be! Therefore, on the whole I felt relatively comfortable with meeting the extended deadline despite the surgery I had recently had!


This image below shows my current task card for the Jellyfish. It has a fairly standard pipeline that I've used throughout the majority of tasks in this module. I did review the lecturers for this animation, however, I knew I wanted to go for a more silly stylised outcome so I decided to focus more on the preproduction research to drive how I brought this creature to life rather than following the lectures like a tutorial.

Rig Acquisition and Testing

Firstly I experimented with the jelly rig (Animation Buffet, 2014) shown in the image below that I acquired directly from the University Canvas site but it is also referenced on Animation Buffet (2014). I tried searching for the author in the rig zip file and online, however, I unfortunately couldn't find anything. I experimented with all the controllers and was happy to learn that it was a viable rig and fairly easy to use. I had individual and universal tentacle controllers, a simple squash and stretch body rig and a fairly simple face rig. The simplicity was good because it meant that I could be creative with the controls that do exist.


The jellyfish model and textures looked absolutely beautiful, however, they weren't Arnold shaders and weren't going to render nicely in their current state. Therefore, I needed to convert the materials to Arnold shaders by replacing the existing phongs with aiStandardSurface shaders. The challenge here was that there were some complex graph node set ups with various nodes driving the final colour, so I couldn't simply plug textures into the new Arnold shaders. However, I managed to solve this by opening the graph networks, adding a aiStandardSurface shader node, breaking the connections from the input nodes on the phone and plugging them into the aiStandard shader instead. This worked, which was awesome! I was really happy with this because the initial set up was looking great. The image below shows a really basic render in Arnold to prove that the pipeline had worked.

I experimented with the roughness and metalness values to try and get the material looking jelly-like and hoped that if I could set up an interesting scene and HDRI lighting that it would look really visually pleasing and stylised yet grounded in reality.


I was eager to see what render quality I could achieve and what the final outcome would look like with underwater lighting. So I began a search for an underwater HDRI and came across this asset by Tony Wony (2022). This was completely spot on for my scene because the HDRI was a stylised image and should reflect the style of the rig. What I hoped would happen would be that the sea bed would reflect on the underside of the jelly and the light from above would hit the top but give it a blueish look to make it look underwater.


After some experimentation with render, lighting and material settings I achieved the result shown below which I was extremely happy with. You can see the seabed reflecting on the underside of the jelly with a slightly sandy colour tint whilst the top receive the blue ocean lighting. I made the eyes even more glassy than the body which I think works particularly well as it clearly separates the properties of the two materials and makes the eyes feel more alive - almost allowing you to see into the jelly's soul. I was super happy with the overall quality as it completely achieved what I wanted - I was eager to finish the animation and see a full animation in this render quality. I also realised that I wouldn't need any more of a 3D scene because I could use the background image of the HDRI as my ocean background with the jellyfish floating a decent bit above the the seabed.

Research

The next phase in my production pipeline was to understand the realistic movement of jellyfish through study of reference to inform how I would bring this creature to life. I've built up a lot of skills with my observation of reference across this module so I was confident that this is all I would need in order to inform my creative outcomes. I came across the below video (15 Incredible Jellyfish Species, 2022) which showed 15 different types of jellyfish with some accompanying narration of their anatomy. This was great to compare a vast range of different jellyfish and understand their similarities and differences. 

One of the key things that I noticed was how they propelled their self through the water using their frills on their 'heads'. They tended to slowly roll/squash up and then pulse/stretch down quickly. This creates a contrast in the timing in their swimming pattern. I also noticed that the larger the jellyfish the slower the motions are, therefore, I would need to balance the timing of my locomotive loop so that it feels reflective of it's size. You can also see how the tentacles drag behind rather than acting like a squid active tentacle. This was a little different to our rig because the tentacles on our rig are quite thick whereas the tentacles on most real jellyfish are quite thin. This got me thinking that my rig is kind of half jellyfish and half octopus so I would need to look at both creatures to inspire the movement of this particular jelly!


The previous video was great, however, it was long, showed a range of different types of jellyfish and showed a range of footage types from video to still imagery. I wanted to explore some short clips of jellyfish that really captured the key parts that I picked out form the first video. I came across the below video (Jellyfish Movement, 2021) that showed a simple and short video of larger jelly fish moving. It was good to have this reference and particularly focus on the head motion as it was a close up shot of the jellyfish movement.


This next video (Jellyfish Movement, 2016) was similar to the one above but showed an even slower locomotive 'pulse' of a different type of jellyfish. I felt like this video was useful for contrast and to confirm that I felt the motion of my jellyfish should be closer to the previous video rather than this one. 


Next I came across this video (How do Jellyfish Move? Fascinating Fact, 2023) that I was really interested in. This one seemed to be in-between the previous two videos in terms of the motion that I wanted to create and the anatomy of this jellyfish versus the rig that I had being more similar. I loved the slow squash out movement before the fast pulse down - this is what I was going to use as the base of my animation loop. I also liked the way the tentacles reacted and floated about in the water. I would need to make sure that my tentacles flopped about in the water and responded to the water resistance rather than air resistance. This would mean that the animation should look a lot more floaty!

I came across the How do Jellyfish Move? Fascinating Fact (2023) video which provided a short analysis through narration of how they move. It discussed that movement is slow and pulsing and with the lack of bones. It discussed that their movement type allows them to covers large distances with as little effort as possible. It discuss that the pulsing motion is controlled by muscles in the 'bell' of the jellyfish to create the motion. This confirmed the analysis I had been doing already, however, also had an array of interesting reference footage to accompany it which was interesting to review along side the narration.


Lastly I did a little bit of research into octopus to understand how their tentacles move when they swim and if I could use any element of this in my animation as the tentacles on my jellyfish were way chunkier than all the jellyfish I reviewed in my research. I found a lot of videos but decided that the even though there were differences in the anatomy of my rig and a regular jellyfish an octopus was even more different. However, I did come across the below video (The Mimic Octopus - impersonates jellyfish, flatfish and snake and mystery shapes., 2023) which was really interesting. This showed a mimic octopus that mimics the movement of other creatures. One of these is thought to be a jellyfish as it adopts a more pulsing motion. This was really awesome to see as you can see how it raises its tentacles slowly before pulsing them downward quickly - just as we saw in the jellyfish motion but with their bell-shaped bodies. This was really useful for me as I could combine the way this mimic octopus moves it's tentacles with the pulsing motion of the body of a jellyfish to hopefully create a locomotive cycle that matches the rig!

Animation

Now that I'd explored a vast array of research I felt like I had enough planning to get started with the base o f the animation. The playblast below shows my exploration of initial timing and posing across the full loop. I don't have a complex frill to animate on the bell so I've used the squash handles to create a slow stretch upward and then a faster squash down to create the pulsing motion I observed from my reference. I also allow the head to lead and the tentacles to almost drag behind so that it is reflective of the head being the powerhouse behind the motion. At the moment I've animated all the tentacles in synch which will be later offset to create a more floppy motion. I played around a lot with the timing to ensure that nothing felt too fast and instead had that more floaty nature that should reflect water resistance.

The legs actually pretty tricky to pose as the local axis weren't set up to reflect their position on the body, therefore I needed to use the world position to animate multiple axis to get the positions you see below. There was a global control that would raise all up or all down, however, I then wouldn't be able to offset the tentacles from one another and would have less control over the individual joints so I decided to move forward and work with the world space controls of the individual legs.


Next I moved on to offsetting the tentacle joints from one another. I initially started with a one frame offset moving down the hierarchy, however, this looked way too loose and dexterous where I wanted a more floaty look. Therefore I increased the amount of offset slowly until I reached a 4 frame offset between each joint moving down in the hierarchy from the head. The playblast below shows this and I was really happy with the floaty look to the motion and it felt like it was moving through water which is what I was aiming for! Next I would move onto offsetting each leg from one another to prevent twinning and the upward motion which would further improve and give context to the pulsing motion.


Firstly I was keen to get the upward motion working to further contextualise the pulsing motion and make the whole animation more believable as I didn't think this animation looked too good as a static loop. I experimented with the translate Y motion so that it would propel itself upward relatively quickly before slowing down as the water resistance acted on it and finally actually losing a little bit of height as gravity pulls it down slightly. Whilst it probably wouldn't sink too much as these creatures are light I felt like my rig looked a little chunkier and heavier so it might sink a little after each propulsion. I also noticed that when the mimic jellyfish moves it sinks a little as well so I felt like this was reflective of these observations. I used a simple infinity curve with the cycle with offset option to keep the jellyfish raising over time.


The below video shows the outcome of this movement. I was super happy and felt that I'd really been using my reference well to create an interesting final outcome that was stylised and grounded in reality. The pulsing motion now felt even stronger as each pulse has a reaction in the jellyfish moving through space. I needed to offset the legs from one another to prevent twinning which would be easy, however, I was keen to see what I could do with the face to make this jellyfish look silly. My vision was to have it look like its breathing in before exhaling as it pulses upward. This isn't true to a real jellyfish but no jellyfish has a face at all - let alone one like this! Therefore, I thought this silly idea could work! It would also be great if bubbles came out, however, I don't think I'll have enough time for this especially as it wasn't my main animation for the module!


The below playblast shows my exploration of the facial animation. I replicate the slow opening and fast closing of the mouth to mirror the pulsing action of the body. I'm actually allowing the mouth to lead the whole motion here as I pulled the motion slightly earlier so that it follows mouth closing to body squash to tentacles dragging behind. I think this makes it look really silly and cartoony but still believable, which I absolutely love. The eyes are also offset from one another by a 3 frame lag on one eye so that it makes it look even more silly. I also animated the rig scale slightly so that as it breathes in it actually gets bigger and it shrinks when it breathes out. This is really subtle but makes the whole animation more believable and helps sell the idea of breathing in further - similar to how human's chests expand as we breathe in. I was really happy with everything so the last thing left to do was to offset the tentacles to prevent the twinning before developing the scene.


As described many times, the below video shows the final tweak to the loop - the offsetting of each individual tentacle to prevent twinning. I selected all the leg joints of a complete tentacle and offset them in a 3-4 frame range either earlier or later. This frame range is good as it always it to feel very floaty. I love the final result as it looks so much more natural and more appealing to the eye and less mechanical now that everything is offset.

Scene Development

Earlier I discussed that I didn't really need a 3D scene as I have a HDRI that I can use as the background image and if the jellyfish is away from the seabed it will just look like it is in the main volume of the water somewhere. So instead I though about the jellyfish scene in Finding Nemo (Finding Nemo Jellyfish Scene, 2022) and how awesome this scene looked with a big swarm of jellyfish moving through the ocean. I thought I could do something similar with my animation loop to make a more interesting scene by duplicating the rig and offsetting their animations so that we have a swarm of jellyfish moving around.


I thought it would be good to look at some actual reference of a swarm of jellyfish rather than focusing on a creative outcome. I found the below video (A swarm of Jellyfish, 2020) that I felt was a good piece of reference for looking at what a swarm of jellyfish actually looked like. What I particularly liked was the density of the jellyfish and the random organic positioning of the jellyfish. I also like the depth of field effects that were occurring with the jellyfish at the back blending more into the background with the closer jellyfish more in focus. I felt like I could use all these concepts when creating my swarm of jellies!

Render & Scene Development

I started with positioning the camera so that the main jellyfish was on the right third of the screen space. This jellyfish would remain in focus so I set up the depth of field settings by measuring the distance between the camera and the jellyfish so that it stayed in focus.


Next I added my second jellyfish. I did this by saving a copy of the jellyfish loop and importing it into another file that I was developing the scene in. I chose to important a copy rather than reference as I needed to offset the animation keys which wouldn't be possible with a reference. To position the jelly I used the graph editor to move the translate X and Z keys and then finally decrease or increase the translate Y animation curve to raise or lower the jellyfish but retain the animation. I think could select all the animation curves of all controllers and offset them so that each jellyfish wasn't animating through the same poses at the same time. The below image shows a render of 2 jellyfish with the depth of field settings so that the rear jellyfish is blurred into the background.


I used the same approach for positioning a jellyfish closer to the camera to create a further sense of depth and hopefully draw even more attention to the main jellyfish that is in motion.


I continued to repeat this process and positioning the jellyfish randomly until I had a swarm of jellyfish. I was keen to not add too many to the scene that it was distracting but also add enough to ensure that it felt like we were looking at a swarm moving through the ocean. The below two images show a render of the swarm and a shot from within Maya that shows the positioning of the jellies from a top down perspective.



The below playblast shows the completed scene with all jellies set up. I was currently getting a 30 second render time per frame, which was manageable to render a complete sequence in a sufficient amount of time. I actually later noticed that I made some errors with offsetting the animation and the rig scale animation wasn't properly aligned on some jellies. This mean that the illusion of the breathe in animation was broken. I do later go on to fix this issue on the final render however!

I had the idea that I could render this animation in layers - rendering the background once and then rendering the jellies separately. I could then composite these in Premiere Pro and this approach may speed up render times. It would also mean that I could possibly apply a ocean warp effect on the background to further convey that we are underwater and reflect that underwater distortion. I thought that if I put this across the jellies too it might detract from the animation I have done. The below two images show the render of the scene as a single image and a render of the jellies using the alpha transparency for easy composition.



I did a little research into how easy it would be to create a wave or water warping effect in Premiere and hound this useful video (Premiere Pro CC : How to do Wave Effect, 2018) shown below. Sometimes more complex effects are best done in AfterEffects and I wanted to avoid installing this if I could. However, this video showed how simple it was to create a wave like distortion effect. I was happy that I could use this to further develop my jellyfish animation scene.

I applied the wave modifier and experimented with the settings until I receive a nice slow and wide wave warping effect. I also used a blur on this image to control the depth of field effect that I could create in post rather than in the render itself.


The video below shows the outcome of the wave effect and the blur which I felt was working particularly well! I loved the slow speed and and the shallow waves. It took some time to get the scale and size of the waves right as I needed to have wide width but fairly short height to get a water looking effect. There was a slight issue with this effect as it said that it would pin the edges but if you look at the top of the screen you can see it isn't working as I have some black artefacts. I could increase the scale of the footage slightly to remove this effect as it would be outside of the frame.


Next I would import my rendered jellyfish layer, however, I ran into a really weird error. It seemed to suggest that there was a problem with a particular frame. This was super odd and I'd never came across it before. I checked out the individual frame and it didn't appear to be corrupt which was odd. I did a little bit of research but didn't find any viable solutions. I deleted the footage and reimported the image sequence and it worked this time with no error. Really odd but sometimes turning it off and on again is the best and easiest solution!


The below video shows the outcome of the composition. It looked kind of cool but there were loads of small errors that I had noticed that I really wanted to fix. There was the issue with some jellyfish having the rig scale animation offset not in sync with the pulsing animation which looked weird; there was the issue with the warp effect on the background not properly pinning to the edges and creating weird black artefacts at the top of the screen and finally the depth of field on the jellies from the render wasn't overlaying with the background nicely. The overlay issue was caused by the dithering of the render and how the alpha channel was working with the background - it just wasn't looking as appealing as I wanted it to.


I decided to rectify all these issues using a different approach. I could render the jellies without depth of field but in 3 layers instead. The 3 layers would be foreground, midground and background and then I could use blur in post production to fake the depth of field. It would also mean I could easily control how much each layer was blurred and keep the mid ground easily in focus. This would increase render times slightly but I felt the payoff would be worth it due to looking more professional and less clumsy. I also really wanted to re-render because of the animation offset issues I noticed. I would fix these issues in the graph editor before I set of the renders. Lastly I can easily scale the background HDRI image up slightly so so that the black artefacts at the top of the screen were out of frame.

Final Outcome

The below video shows the final outcome with all the tweaks I mentioned. I am super happy with how this looks because it looks way more professional. The layered rendering composition worked really well with the blur allowing me to 'fake' depth of field with a lot of creative control. I was really happy with how the animation looks as a full swarm of jellyfish swimming through to create a complete animation. ITs great to see the overlapping action happening throughout the scene but using depth of field to draw focus to the main jellyfish in the midground.


Conclusion

In conclusion I had a lot of with this animation to create something a little silly but well informed and grounded in reality. A lot of my other animations in this module were quite serious so its good to have this animation as  little bit of contrast and show more depth in creativity within my module showreel. It was also really good to explore an aquatic creature that moves entirely differently to all other creatures I have animated to broaden my skills and experience further. I am very happy with my approach to rendering and the end quality of the animation. It was good to use all tools at my disposal to adapt my pipeline and lead to high quality creative outcomes. The visual quality feels very underwater which is great. I'd have loved to have added some bubbles but I think this could be quite a large job with mouth bubbles and also bubbles created from movement so I decided to leave this aspect out! Another aspect I could have developed would be to add a little rotation or no linear upward movement to help make it look even more natural. 

I have achieved the learning outcomes because I have : 

  1. Studied a broad array of jellyfish reference to understand their locomotion and anatomy to directly inform my outcomes. I have also studied octopus motion to help animate the tentacles in this scene to help match the rig.
  2. I have explored the rig provided and taken a calculated approach to animating the cycle of this jellyfish to achieve the motion and outcome that I planned.
  3. I've created an animated loop and used optimised techniques to duplicate and offset the animation to create a swarm to create a more engaging animated scene. I've also used tools and processes learnt throughout the module to easily create and manipulate animation - this was actually one of the quickest animations I produced but still very high quality.
  4. I've created a complete scene that has been grounded and informed within research throughout. I've explored creative ideas to create a silly animation that matches the rig but is grounded in life like movements. This has created a silly believable final outcome!

Learning Objectives

  1. Understanding Jellyfish Motion Techniques: Delve into the ethereal motion of jellyfish, understanding the key principles that define their graceful movement. Explore techniques for capturing the fluidity, transparency, and pulsating motion that make jellyfish animation both captivating and challenging.

  2. Introduction to the Jelly Rig: Familiarize yourself with the freeware Jelly Rig, a specialized resource designed for animating jellyfish. Learn where to find and download the rig, and explore its features.

  3. Optimizing Animation Workflow: Develop a streamlined workflow for animating jellyfish, focusing on efficiency without compromising on creativity. Explore tips and tricks for maximizing the capabilities of the Jelly Rig to create animations that are both believable and fun.

  4. Hands-on Tutorial – Jellyfish Animation: A step-by-step tutorial where you'll animate the Jelly Rig to create a realistic and enjoyable jellyfish animation. Learn how to leverage the rig's features to achieve lifelike movements, and explore creative techniques for infusing personality into your jellyfish character.

Reference List

  1. Animation Buffet (2014) Jelly. Available at: https://animationbuffet.blogspot.com/2014/11/jelly.html [Accessed 6th May 2024].
  2. 15 Incredible Jellyfish Species (2022) YouTube video, added by Top Fives [Online] https://www.youtube.com/watch?v=8_9toXCB4sU [Accessed 6th May 2024].
  3. Jellyfish Movement (2021) YouTube video, added by Steph’s Photography [Online] https://www.youtube.com/watch?v=Pr6OP3Ml4iw [Accessed 6th May 2024].
  4. Jellyfish Movement (2016) YouTube video, added by Jesmine Cheung [Online] https://www.youtube.com/watch?v=zt4Cw138pKU [Accessed 6th May 2024].
  5. Jellyfish moving (2021) YouTube video, added by Animation references [Online] https://www.youtube.com/watch?v=kdwBPsICr68 [Accessed 6th May 2024].
  6. How do Jellyfish Move? Fascinating Fact (2023) YouTube video, added by Ocean Fauna [Online] https://www.youtube.com/watch?v=bJfJnSoRmCk [Accessed 6th May 2024].
  7. The Mimic Octopus - impersonates jellyfish, flatfish and snake and mystery shapes. (2023) YouTube video, added by Indoona [Online] https://www.youtube.com/watch?v=mhsYQppTmfI [Accessed 6th May 2024].
  8. Finding Nemo Jellyfish Scene (2022) YouTube video, added by LittleGreenAlien 2 [Online] https://www.youtube.com/watch?v=mQ5s3WqJKXs [Accessed 6th May 2024].
  9. A swarm of Jellyfish (2020) YouTube video, added by Khatetanalyn M. Nacionales [Online] https://www.youtube.com/watch?v=yM6_Ia4-v7o [Accessed 6th May 2024].
  10. Premiere Pro CC : How to do Wave Effect (2018) YouTube video, added by Adobe in a Minute [Online] https://www.youtube.com/watch?v=f9LmmlvfGTU [Accessed 6th May 2024].
  11. Tony Wony (2022) UnderWater HDRI, December 30th [ArtStation]. Available at https://www.artstation.com/artwork/L3Jx4k [Accessed 6th May 2024].

Comments