Blog Archive

Marching Cubes for Fluid Simulations

Friday, May 10th, 2013

After cleaning up and optimizing my SPH fluid simulator a bit, I implemented marching cubes to generate a mesh over the particles. It’s not terribly efficient but it does alright, usually running 7-9 fps for 400 particles without any tricks like threading or GPU acceleration. Much of it is based on the marching cubes definitions by Paul Bourke, the site is extremely useful and gives a great explanation of the algorithm.

I used two different methods to calculate the scalar field, one being the classic Metaballs by Blinn, and the other is the Averaged Center method by Zhu and Bridson (2005). The averaged center method is supposed to be smoother, but maybe I didn’t have enough particles for it to be really smooth or the radius was too small.

SPH Fluid Simulator

Thursday, April 25th, 2013

I wrote a basic SPH fluid simulator based on the papers by Muller and Kelager, written in C++, OpenGL, and NGL. The hardest part was finding parameters to balance pressure and viscosity to keep it from exploding. The first video had surface tension disabled for speed, the second is with surface tension active. The only optimization is done with premultiplying the kernel coefficients and a uniform grid. Videos are below.

(more…)

Houdini City Generator

Monday, April 22nd, 2013

Houdini Digital Asset for a city generator. The tool can take a black and white image to trace the road layout, or a user-manipulated set of curves to interactively control the roads. The tool also includes options for building geometry, placement, and terrain.

Screenshot

Group Project

Thursday, April 18th, 2013

This is a group project I worked on while in the Master’s program at Bournemouth University. I was responsible for simulations, environment details, scripting, and pipeline management. Simulations were done mostly in Rayfire and 3ds Max, while other work was done in Maya, MEL, and Adobe suite. The back wall was also created using Rayfire to shatter it.

Frankenstein

Tuesday, February 12th, 2013

frankenstein

Maya assignment on “dynamism.” Frankenstein was modeled in Maya, then sculpted and painted in Mudbox. The maps from Mudbox were then plugged into a misss_fast_skin shader, which was then plugged into the color for an mia shader to try to incorporate specular maps as the misss_fast_skin shader didn’t really work with it. This was my first shot at subsurface scattering: I learned that the subsurface scattering greatly mutes any detail in the maps. If I had time I would’ve gone back and repainted exaggerated details in. The hair is Maya fur applied to a patch of geometry for the scalp and groomed.

Generator and chains both use a layered mia shader for rusty metal. The rust is a lambert layer on top of a metal shader, using high contrast procedural mountain texture for the weight. The walls use an image texture and displacement map. The electricity is done using Maya’s lightning, with variation on segments.

I would’ve liked to spend more time on lighting and learning about rendering and compositing, as that is not an area I’m particularly strong in. Next time!

Rocky Raccoon 2.0

Monday, March 19th, 2012

Rocky got a makeover! Some sculpting, redone UVs, repainted, and fur redone. This time the fur is in two layers, a base coat and a top coat. He also has eyes!

Stop SOPA and PIPA

Wednesday, January 18th, 2012

Don’t let the government censor the Internet! Do something at http://americancensorship.org

Playing with Fire

Monday, December 12th, 2011

Here’s a fiery tornado-like effect I created in Maya to learn about fluids. I hadn’t worked much with fluids outside of tutorials, so I spent a lot of time figuring out what everything did. So there’s four nParticle emitters at the base, with a strong vortex field causing the swirl. I offset the vortex just a bit so that the spiral moves slightly from side to side, a bit like a real tornado would as it travels. A gravity field is also pulling the particles upwards. I’ll post a video of just the particles later to show how the movement was planned out. Then two of the emitters were turned into fluid emitters to get a deeper, more layered effect even though I didn’t have much time. The most important fluid contents were temperature and fuel, which controlled the shading. Then another fluid was added, just wider than the central column of fire to get the wisps of stray flames. Then it was rendered using mental ray using the Production preset.

Rescue Mission

Wednesday, November 9th, 2011

Hey everyone, here’s a new, fun video I worked on! I did the bullet and the shotgun blast in Maya, hope you like it =)

http://youtu.be/2VllO3F5XQ4

Camera Projection

Wednesday, November 9th, 2011

Camera projection done in Maya and Photoshop. The explosion is done using the Voronoi script for the shatter, customized to concentrate the shards in the center of the shattered mesh, then simulated using Dynamica. The debris and and dust are done with nParticles and expressions and rendered in mental ray.

The original painting is by jubjubjedi, go check out his amazing gallery! Thanks so much for letting me post this!