This reminds me of a paper that came out of the VCL several years ago - http://graphics.berkeley.edu/papers/Clausen-SLS-2013-04/index.html
One way of simulating liquids is by representing the space as a tetrahedral mesh and using the finite element method to numerically solve the differential equations that express the system's behavior. The paper above uses these techniques to simulate the interactions between liquids and solids.
How exactly are the textures rendered on top of the particles? I understood how the particles interact with each other and simulate fluids, but I do not understand how the textures were overlaid over to actually make it look like water.
Maybe we can determine what kind of texture to render based on the relative positions of the particles? But I can't think of a way to effectively do that. It seems to require massive computation for an animation.
Reading through some research papers on this topic, it seems some methods are able to simulate these texture values by maintaining a texture map of the particles as they are rendered.
Is this method prone to the instability problem mentioned earlier in this lecture? For example, say I wanted to run this simulation in real time for a couple hours in something like a video game, would the performance decrease over time or would it remain stable throughout?
Here's a cool method for rendering water in a cartoon-ish style. What's cool with fluids is that you can still affect what they look like during the rendering process outside of just the pure physics simulations and effects.