This looks great - I like how the "simple shader" version gives a sense for how it works under the hood.
Is the implementation of it related to real-world mechanisms, or is it all smoke-and-mirrors that happens to look like real-world liquids? (Or, is the distinction non-important?!)