Categories
Final Major Project MA Visual Effects

FMP: Week 1

My original plan was to create a full CG 3D music video with Metahumans inside of Unreal Engine, however I have done similar projects to this before. At this current moment in time I want to persue a career in the Music Video VFX Industry, this is very big in South Korea and a lot of small studios I follow within this industry have a very similar style and utilizes techniques such as 3D scanning into their projects very often. I have also planned to write my theisis on the topic of Guassian Splatting, a technique also gaining more popularity with its first use in a production movie (Superman 2025) earlier this year and recent implimentation to DCC’s such as Houdini and Maya. So I have decided to take on the challenge of incorporating these techniques into my final project. This will be a challenge but will be a signifinatly more usefull learning experience and portfolio piece rather than just doing something im comfortable with and have done before.

The next 2 weeks I will be researching how gaussian splatting and 3D scanning can be used within DCC’s and implimented within my project. I will then be able to start planning my timeline and create an animatic based on my findings.

To start I began researching

Categories
Exploratory Practice MA Visual Effects Personal Project

Personal Project Video

Categories
Exploratory Practice Group Project MA Visual Effects Personal Project

Group Project Video

Categories
Exploratory Practice MA Visual Effects

Summer Week: 11

Combining other shots & Exporting

I trimmed and put the other shots together based on my storyboard then graded them based on my grade for the final shot. I also tried tracking and stabilsing some of these shots but I didnt like how they looked and decided to use the raw camera movement instead.

I originally planned to have the mycelium slowly moving in two other shots but due to time constraints I decided to just polish the final shot instead.

Siggraph Rainbow Conference

This week I also attended the london siggraph Rainbow Conference where I gained a lot of insight on the VFX indusustry from talks about the VFX behind Nosferatu and new features in Houdini 21. In the Houdini workshop they also talked about new Gaussian Splatting features, this will be usefull to look into for my Thesis on this topic.

Categories
Exploratory Practice MA Visual Effects

Summer Week: 10

Importing render AOV’s into Nuke

After setting up my render settings in Houdini I had a useful set of AOVs such as diffuse, reflection and shadows, this allows me to edit the look of my render in comp without going back into Houdini and rendering out 700 frames every time I want to make a change.

Adding grain, blur, colour and lightwraps

After editing my AOVs and doing a first grade on the CG render I then added motion blur, grain and lightwraps to try and match the CG as closely as I could to the plate then merged them together.

Houdini commercial work

With my more refined skills in Houdini I was able to gain a small freelance role creating some shots for an advert. I was tasked with creating a milk thistle flower with animations and a water dropplet sim. I started by using the same core structure I learned from my previous flower project. Unfortunately as this was a very complex flower I had to do a lot tweaking and research into Houdini and the flowers structure, and go through many itteraions and feedback loops with the client as this flower has a lot of different varieties and stages. To create the water dropplet I blasted a single petal then created a sphere that would be used as the water, I then had to animate the petal moving and bending as if there was water flowing down it, I also used a CHOP network to add realistic bouncing and blend my animation realisticly. I transfered these animations into Solaris and rendered out first pass motion drafts to get feedback from.

Categories
Exploratory Practice MA Visual Effects

Summer Week: 9

Added HDRI lighting captured from filming location

To get realistic lighting and be able to match my render to the plate I used a HDRI that I captured on the filming location with a 360 camera from ORB, there was not much editing that needed to be done to this as the 360 cameras exported files were allready setup correctly, I just needed to tweak the values until the lighting looked and felt correct. I then added an area light that matched the real world location that the light would of been coming from to get some more defined shadows and specular highlights.

Creating materials for mycelium

I had quite a lot of trouble creating the materials for the mycelium. I wanted to have the displacement and colour change based on attribute values, such as having the colour and size of the mycelium corilate to the age of the animation so the larger parts would be a more darker / dryer colour and larger and the sub tendrils be smaller and have a greener more fresh colour. When creating the animation I allready had the values such as curveu that gets the length of the curve and perimeter, an attribute I created that controls the spawning of the smaller tendrils off the larger one. Converting these attributes from points to primitives and from the SOP workspace into the Solaris USD workspace had some issues but I was eventually able to access the values within the material editor and use them to influence the displacement noise and colour ramp.

Displacement maps

Lighting and test renders

Once I had the materials setup I make a basic lighting and render setup so I could render out 1 frame to test compositing in Nuke while I setup the final lighting and render settings and wait for the long render time.

In order to achive shadows on the wall behind the mycelium I used the wall mesh as a holdout, in Solaris there is a node that does this by routing in the render mesh then the shadow mesh and adds the shadows that would be appearing into an AOV channel on the rendered exr sequence.

Categories
Exploratory Practice MA Visual Effects

Summer Week: 8

Setting up mycelium node network

To start the simulation I needed a surface for the mycelium to path along. I created a 1:1 holdout of the door based on the 3D tracked pointcloud from 3D Equalizer. I then scaled this down and rotated it to be at the best for the sim, this will then be later undone to get back to the original scale. The mycelium works by scattering a point onto the mesh, then manually moving that point to the desired start location, this is done 2 times in my animation. Then the points have some attributes initialized and fed into some vex code. This code essentially sets a goal for the points to path to then creates a curve towards it, this curve sticks to the surface of the holdout mesh. I can then further edit the curve with variables such as, distance from the mesh, length, segment length, and the directionality of the path (if it goes in a straight line to the goal or takes a long winding route).

The curves are then given attributes based on the desired frame range that control the animation. using these attribues I can spawn sub paths from the initial curve when the desired value reaches a certain point, allowing for the sub mycelium to only start growing only when the main path has reached that point.

To get these curves into a mesh I used polywire and smoothing to reach the desired look. This simulation was then put into a file cache to allow for easy viewing and avoid have to constantly calculate the sim whenever I wanted to view it.

Once I had the final sim I could move the mesh from the SOP (building) workspace to the Solaris USD (rendering) workspace.

Categories
Exploratory Practice MA Visual Effects

Summer Week: 7

Creating music for group project

I needed to get the sheet music into MIDI to be useable within the music software, this took a while but once it was done I could then seperate the parts of the song into their seperate instruments. With these seperated insrument channels I could then talk with the group on what ones we wanted to use. When the desired instruments were chosen I could then go in and move the notes around on each instrument to achive the desired sound. With all the notes playing at the same volume it sounded very robotic, to fix this I changed the velocity of the notes to mimic the randomness and building volume that would be present when played by a real instrument.

Sound design

When creating the sounds for each instrument I started with orchestral samples, these are recorded from real insturments and played back when the corrisponding note is played. I tweaked the values on these instruments and added effects based on feedback from the group to achive the desired sound.

Houdini Terrain

I wanted to refine my terrain skills I learned ealier this year so I made a simple heightfield and scattered some foliage onto to, I then used the Houdini HDA system to import this into Unreal Engine.

Houdini Flower

I followed a very helpfull tutorial on creating flowers in Houdini. This was created by starting with a 2D petal that was then rigged. Next to create the points where the flowers petals would be I used some vex code to create the phylotaxis, this is essential two spirals that follow the golden ratio, the vex code allows for this to be edited into the desiered shape while still following the phylotaxis rules. The single petal was then copied to all of these points using a series of nodes and a for loop. In order to make the flower bloom two poses were made, one for the bud pose and one for the bloom pose. These poses were then blended together and animated. To add more realism I created a vellum sim on these petals, this invoved setting up some warmup frames where all the petals were deintersected so they didnt overlap at the start of the sim. I spent a lot of time editing the values of the simulations wind and pin & cloth constrains to get the look I was going for. Finally to add more detail to the petals I added some noise with VOP nodes, and also created materials with displacements and subsurface scattering.

Categories
Exploratory Practice MA Visual Effects

Summer Week: 6

Importing Tracking data into Houdini

Once I had the tracking data from the shot I was able to import the pointcloud and camera movement into Houdini, I then set the camera to use the plate so I could check everything was correct.

Using these points I was able to recreate the door shape as a mesh in Houdini. This will allow me to have an object to place my mycelium on and have it move over the surface and into the cracks of the door.

Houdini character rigging, animation & groom

This week I got a static character model, rigged, skinned, added hair and animated it. I started by creating a bipedal skeleton, then creating the rigcontrols and constrains inside of a subnetwork to allow them to be accesed within the viewport. Then the character was animated using the same techniques I learned from the ball project. For the groom a mask based on the characters UVs was used to place the hair, it was then tweaked to achive the desired look. Finally it was rendered in Karma.

Categories
Exploratory Practice MA Visual Effects

Summer Week: 5

Tracking hero shot in 3D Equalizer

In order to comp CG elements onto my shot I needed to track it. I did this in 3D Equalizer. Using the skills learned from the earlier class on 3DE I was able to import the shot and setup the camera settings based on the Blackmagic 4K and lense I was using when filming. After some cleanup I then exported this data to later be used in Houdini.

Houdini Explosion

This week I wanted to learn pyro sims in Houdini. I modeled a bomb and a fuse using the techniques I have learned. I then fracutred the bomb mesh and place a fireball recipe inside it, I tweaked the settings to get the desired result and put the fractured bomb mesh as a collision object, this allowed the mesh to interact with the bomb in a realistic way and give effects such as smoke trails following the fractured pieces. Finally I animated the fuse and put a POP particle sim that spawns soot falling to the floor and sparks. Then it was rendered using Karma.