Thursday, December 4, 2025

Slime Player Character

Overview:

I created a slime player character. The mesh itself is a regular sphere that acts like a slime using the material applied to it. The character also has animated eyes and VFX for jumps and movement.



 

















Base color

The base color is made by lerping to colors based on the z value of the local position of the pixels. The Fresnel adds a rim to simulate subsurface scattering. I have a panning texture to create bubbles in the slime and a normal map to add some texture to the slime body.


Vertex offset



























The distance to nearest surface gives the slime the main structure and interactions. The visualization above shows that surfaces near the ground/environment are white and pixels get darker as far as you go from a surface

Shape: 







































The shape/offset of the slime is not uniform, the material gets the forward vector of the character and the dot product between that and the pixel's direction. That value is used to determine the alpha using the formula below. The alpha is used to lerp between a front spread value and a back spread value. 




























Animated Faces:



The face is animated using a sprite sheet. The Blueprint passes an index value using a Material Parameter Collection. The eyes are also animated using timelines in the blueprint

VFX:







































The VFX spawn when the character lands or when the character moves. When the particles land on a surface, they spawn a decal to simulate a splash. The trail is created through a similar method where the spawning particles are invisible

Monday, December 1, 2025

Common Art A Stage

 












This week I worked on scene lighting to fit the Wayfinder theme. I redid the lighting setup to make sure lights were coming from real light sources (candles, chandelier, etc). Lights closer to the walls created bands on the walls due to the toon shader so I adjusted the light calculations and drop off values to make the light blend better around surfaces. I adjusted the bloom to make shiny objects shine brighter, giving them a more royal look. Additionally, I got rid of some shadows casted by lights which were making the scene look unclear.













For the Entry hallway, the old lighting (pictured below) making it hard to see things around the hallway; The rect lights on the windows also had large attenuation radii contributing to some amount of lag. I made the attenuation radii smaller and added a single rect light to light the whole hallway. 


I also got rid of the directional light since most of our scene is indoors and the light was not contributing much to the indoor lighting.

Before Pictures: 













Light Optimizations:





Wednesday, November 26, 2025

GeoJSON reader


 Takes in a geojson file and draws out all countries with a unique color in Houdini by using a Python SOP





Wednesday, November 19, 2025

File IO - Name Generator

Gets an input from a file that contains rules to name a file. When a file needs to be names using the naming convention, the provided prefix and suffix are added and displayed. The user can also add custom rules. Class handles all exceptions so the program never crashes

Thursday, November 13, 2025

Common Art - VFX and Post Processes

Wizard of Oz level VFX and Post Processes

 Worked on creating a toon shader for the game and adjusting post process filters. The image below shows final scene with post processing













This image is of the scene without post processing 












I also worked on finalizing VFX for the scene. Refined the slash VFX (Left) and recreated the scratch VFX (Right) 



Toon shader before and after: 

Before


After


Adding scratch meshes to source folder



Wednesday, November 12, 2025

Inheritance in Houdini

Shape created using Boolean operations of Cubes and Cylinders. Both shapes are child classes of the CSG class which is a child class of the Geometry class














Containers containing each object















Layout of each object


Perforce proof: 



Slime Player Character

Overview: I created a slime player character. The mesh itself is a regular sphere that acts like a slime using the material applied to it. T...