Here’s another, larger scale simulation of that waterfall system I created in my previous post.
Here’s another, larger scale simulation of that waterfall system I created in my previous post.
Here’s something I’ve done completely in Houdini. Render quality isn’t great, but I just wanted it to render quick so I can start working on it again.
Right now, I’ve created a procedural mountain and scattered rocks across the mesh by randomly deforming the copied rocks. I’m plugging that into a simulation network where I first simulate the water, and then simulate the spray. I plan on turning the simulation network into a digital asset to use anytime, by grouping it and allowing controls to easily adjust the input geometry, where water is emitted from, the resolution of the water and the spray amount, among other things. This way, I can create geometry of any kind, and have waterfalls where I want them. That way, you can do mountains with huge waterfalls as easily as a flowing streams.
Further down, the first step in the simulation network is to emit particles from geometry. Whatever gets fed into the network is the emitting geometry. An animated 3D noise field is spraying the water out of the geometry at a constantly different place, resulting in a nicer looking simulation. That simulation reacts with the collision geometry and is saved to disk as a point cloud.
That point cloud is having it’s velocity compared to its velocity one frame behind to find out the magnitude of the change in velocity. This represents all the particles that are transitioning from a really quick speed to a really low speed in a short amount of time and vice versa, so it represents the water that is splashing into things or gaining a lot of speed. Another set of liquid is emitted from these filtered particles to create the “splash” liquid. It collides with the original collision geometry as well as some calculated collisions with the other water simulation. If the splash particles are inside of the water particles, they will animate towards nearest point of the top of the surface, so they’re always on top of the surface of the water. They will live and die depending on how deep they try to get inside of the water mesh.
Once that is bundled into an asset, I’ll try creating a really big mountain-like scene, and testing it out on that. I’ll need a lot more splash particles for that.
Quick test of a tool I’ve been creating in Houdini.
Feed it particles and it will find any number of nearest particles. Using those, it will join the particles to any number of their nearest number of particles with lines.
That is pretty basic, but that means it’s extremely extendable. It can operate on any particle system. It inherits color and alpha (red particle connected to blue particle has a red to blue gradient line). If the particles are moving, it still works (although the nearest particles might change, thus creating new lines). If the colors are animated, it still works.
I can think of hundreds of different things to do with this, so this might turn into a series. If I can find some cool sources, I might even do some data-viz with it. I have a little more optimization to do, and another feature or two to add. For one, I would like the option of the particles saving the IDs of the particles they connect to so that they don’t ever break their connection, but that means data persistence, and that’s a different ball-game.
Click the title to go to YouTube to watch in HD.
So I think I’m getting close to mastering how to make these. I’ve gotten a lot less visual artifacts as well as a prettier render overall. It’s also making me realize how slow my machine is compared to newer machines. Maybe it’s time to upgrade (I’ll regret even thinking that once I finish my taxes).
Here’s two versions, because I comped the first one until I liked it and then forgotten I had rendered a z-depth pass. Once I added that, I felt that it changed the way it felt to something completely different.