Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Graphics Software Science

Making Animated Fluids Look More Realistic 124

brunascle writes "Technology Review has an article about recent advances in animated fluid dynamics made by Mathieu Desbrun, a computer science professor at Caltech. 'He and his team are developing an entirely new approach to fluid motion, based on new mathematics called discrete differential geometry, that use equations designed specifically to be solved by computers rather than people.' Desbrun explains that the currently in-use equations for animating fluid dynamics were not developed with computers in mind, and were simply reworkings of older equations. He claims that his new equations use about the same amount of computer resources, but with much better results. The article includes a 5 minute (flash) video demonstrating various results using his equations, ending with 2 fascinating and vivid displays: the first of a snowglobe, and the second of a cloud of smoke filling a volume in the shape of a bunny."
This discussion has been archived. No new comments can be posted.

Making Animated Fluids Look More Realistic

Comments Filter:
  • by suso ( 153703 ) * on Wednesday January 31, 2007 @01:26PM (#17830328) Journal
    If you ever want to see some cool simulations of water and other particles, there are some folks in the POVRay animation usenet newsgroup (on news.povray.org) that have been experimenting around with fluids over the past year. They are actually pretty neat animations that simulate fluids pretty well.
    • Re: (Score:2, Informative)

      by imsabbel ( 611519 )
      ACtually, povray and its newsgroup is the very last place to look for good looking fluid simulation, as all those available are bad hacks by using blobs and particle simulaton (and look like crap, if you dont live in the 1980s, CG-wise).
      There are quite a few companies that make fluiddynamic plugins for maya or 3ds, and _those_ produce really good results.
      • Re: (Score:3, Informative)

        Actually, the "Liquid Animation" series by fidos uses the Navier Stokes equations.... If anyone's interested, look for them here [povray.org]; the last one was posted on May 20, 2006.
      • Re: (Score:3, Informative)

        by Creepy ( 93888 )
        Huh?

        All methods of fluid dynamics including the one described here use particle simulations of some kind. Even blob simulations are essentially particle simulators (mesh vertices are the particles). The difference between this method and others is that it apparently defines the flux itself based on the surface curvatures of the objects the particles are interacting with, not the conservation of momentum as per the Navier-Stokes Equations (NSE). POV may have been a bad example by the origin
  • Not just "a bunny" (Score:5, Informative)

    by exp(pi*sqrt(163)) ( 613870 ) on Wednesday January 31, 2007 @01:26PM (#17830336) Journal
    That's the Stanford Bunny [gatech.edu].
    • Re: (Score:3, Funny)

      by FooAtWFU ( 699187 )
      And here I was hoping for the Utah teapot! [wikipedia.org] Simulate me a steaming pot of boiling water, and then show me what happens when I take the lid off....
      • Re: (Score:3, Funny)

        by Thansal ( 999464 )
        you burn your hand something horrible.

        However I don't think that has anything to do with animating fluids... (unless we start talking about blisters or congealing blood from REALLY bad burns).
      • by spun ( 1352 ) <loverevolutionary&yahoo,com> on Wednesday January 31, 2007 @01:45PM (#17830588) Journal
        I was hoping for Lenna [wikipedia.org]. Simulate me a steamy Swedish playmate, and then show me what happens when I take her top off.

        Never mind that she's over 50 now, married with 3 kids...
        • Years ago I wrote a really basic real-time cloth simulator. It was crap, the 'cloth' was more like rubber. But if you set it up in just the right way the rubber sheet formed a wonderful round shape that jiggled in just the right way...
        • Simulate me a steamy Swedish playmate, and then show me what happens when I take her top off.

              okay, but I'm not sure what simulating her slapping you and then suing you has to do with fluid dynamics.
    • by JoshJ ( 1009085 )
      Fascinating link. Thanks.
    • Re: (Score:1, Funny)

      by Anonymous Coward
      I assumed it was a different kind of Bunny. Dynamic fluids, a "flash" video, bunnies, snowglobes. But geez, this article isn't about pornography at all.
  • by joe_n_bloe ( 244407 ) on Wednesday January 31, 2007 @01:30PM (#17830378) Homepage
    This is the first post I've seen in a week with a link I actually wanted to check out. Thanks so much for setting someone's server room on fire.
  • Fluids in games (Score:5, Insightful)

    by PIPBoy3000 ( 619296 ) on Wednesday January 31, 2007 @01:33PM (#17830422)
    For us gamers, the cool application is clearly fluids in games. Currently water is a flat plane with a bump map, or possibly an animated plane that is extremely simple. Modern game engines are trying to have some simple fluid dynamics, but it's extremely CPU intensive.

    The article talks about breaking problems into smaller pieces, which means that it should work well with multi-core processors. Probably you'll first see "cosmetic" fluid dynamics, which don't affect gameplay, but still look pretty cool. Imagine characters splashing in water, setting off waves, creatures vaporizing into a puddle, and so on. Should be cool.
    • by Pxtl ( 151020 )
      Well, to be fair there are plenty of games that use simplified water for gameplay - various WaveRace-type games do have a full animated landscape of water that has waves and whatnot. "Spring" is an RTS that nicely mixes those wave effects. Alternately, there's the paint system from Mario Sunshine.... but that's not really fluid either.
    • by Soko ( 17987 ) on Wednesday January 31, 2007 @01:49PM (#17830640) Homepage
      Probably you'll first see "cosmetic" fluid dynamics, which don't affect gameplay, but still look pretty cool

      Oh. I'd say that more realistically rendered fluid dynamics applied to, um, certain feminine features of a certain games heroine [wikipedia.org], would greatly enhance gameplay, especially visually.

      Soko
    • Re: (Score:2, Informative)

      by samschof ( 928254 )
      The "breaking problems into smaller pieces" here is simply the spatial descritization. In this case, tets in 3D or triangles in 2D. They are partitioning the physical domain into a set of small regions, basically like finite elements or finite volume methods. The divergence free constraint and viscous terms still result in a global linear algebra problem to be solved at each time step. So, in this case, it doesn't really have anything to do with multi-core processors. It isn't any more (or less) amenab
      • Re: (Score:3, Informative)

        by deuterium ( 96874 )
        I've never understood why more attention isn't given to Lattice-Boltzmann methods of CFD. The algorithm is less costly, and as accurate as NS along with being highly parallelizable. PowerFLOW uses an integer based LBM, and has had great success. The conceptual problem seems to lie in centuries of continuous domain equations, which computers simply aren't designed to implement natively. People are too married to calculus.
        • by jibster ( 223164 )
          I'm probabily waisting my time posting so late but I can't help myself. CFD mathiods and LBM's have been an obsession of mine for 10+ years now. I only recently discovered that Blender now has a LBM solver built in that's capable of some pretty fast and acurate results. These are real fuid systems not just blobs and particle emmiters. Its very nice to play.

          However while digging into the author of the Blender code I discovered his website. He has already developed real time methiods for interactive fluid
          • Interesting stuff. I've seen some of those animations on diferent websites, and various papers I've collected over the years.

            With the increasing emphasis placed on multi-core architecture, it stands to reason that the future of physical simulation belongs to cellular automata. Wolfram will be pleased.
    • Re:Fluids in games (Score:5, Insightful)

      by Xzzy ( 111297 ) <`gro.h7urt' `ta' `rehtes'> on Wednesday January 31, 2007 @01:53PM (#17830692) Homepage
      We're still a long, long way from doing this in real time.

      In a general sense, computer graphics follow a pattern where someone researches a new method, the ray tracing community adopts it into their tools, refine the technology, then some sharp thinking programmer hacks up a way to approximate the effect so it can be done in real time in a game. Bump mapping, for example, was first introduced in 1996. We didn't start seeing it heavily used in games until around 2004, and it was a combination of advancing computing power and optimization.

      Not that I'm an expert, but based on this I'd guess we're at least 8 years away from having fluid simulation in whatever the FPS of the month is.
      • Re:Fluids in games (Score:4, Informative)

        by Anonymous Coward on Wednesday January 31, 2007 @02:13PM (#17830976)
        Bump mapping was invented in 1978 by James Blinn and has been available in non-realtime rendering ever since. By 1996 it was a reasonably common effect in realtime software renderers (as in, everybody who wanted to show off their coding skillz had to have bump mapping in their rendering engine). But it was not easy to do bump mapping with the first-generation consumer-level 3D accelerators like 3dfx voodoo so people basically forgot about it as they moved onto hardware accelerated graphics... Until pixel shaders reintroduced the programmable pixel pipeline.
      • by smaddox ( 928261 )
        So just in time for the Half Life 3 engine =P
      • Re: (Score:2, Interesting)

        by ponchietto ( 718083 )
        You would be surprised... we are already there.
        http://graphics.cs.uiuc.edu/svn/kcrane/web/project _fluid.html/ [uiuc.edu]
      • In a general sense, computer graphics follow a pattern where someone researches a new method, the ray tracing community adopts it into their tools, refine the technology [...]

        Generally speaking nowadays, the researchers use their homebrew raytracers first. Then the next group to adopt the method are the high-end scanline renderers. Then the hobbyists get it.

        And it takes ages. Remember the Geforce 3 demo which showed Luxo, Jr in real-time? That's 1986-era computer graphics, finally done in real time i

        • Don't assume that it wasn't possible to do Luxo Jr. in real time way earlier, just because the crappy 3d accelerators finally got around to doing it by 2001.

          My guess is that if anyone wanted to then they could have replicated Luxo Jr. in pure software around 1997, but in somewhat less than broadcast quality.

          The demoscene did many effects in real time much more impressive and at higher complexity for years earlier.

          • I hung around the demoscene in 1992-4 or so (go Future Crew!), and the stuff they were doing wasn't higher complexity than Luxo, Jr. They couldn't do curved surfaces, non-Lambertian surfaces were a dream, multiple lights didn't exist and nobody really cared about character animation. My dim recollection was that things hadn't improved in those areas by 1997, though of course, they'd improved in other areas.

            • by Dion ( 10186 )
              A lot changed between 1994 and 1997.

              If someone had wanted to then they could have replicated luxo jr, though.

    • Re:Fluids in games (Score:4, Informative)

      by Rufus211 ( 221883 ) <rufus-slashdot@@@hackish...org> on Wednesday January 31, 2007 @02:06PM (#17830880) Homepage
      Full water is a ways off since it requires a large area to be simulated (well, you can simulate puddles, but not anything you can swim through). However real smoke animates are on their way since you can easily confine smoke to a reasonably small area. Nvidia's smokebox demo was created to show off the 8800's processing power with realistic smoke rendering, and the results of that demo are already being integrated into games. Movies more information are on the creator's website:
      http://graphics.cs.uiuc.edu/svn/kcrane/web/project _fluid.html [uiuc.edu]
      http://www.gametrailers.com/player.php?id=15381&ty pe=mov&pl=game [gametrailers.com]
    • Yeah, except for the fact that games need to push 40fps+ constantly, and that these algorithms will individually calculate every "molecule" or at least a very big 3d grid of data.
      I doubt this is anywhere close to realtime, he states it is about the same performance wise as current techniques, but with higher quality. The last time I tried to render volumetric smoke, it took a while.
      Games use effects like dynamic bump mapping to create water effects. And yes, they are on a 2d plane but so are the current
    • Prince of Persia (Score:4, Insightful)

      by SanityInAnarchy ( 655584 ) <ninja@slaphack.com> on Wednesday January 31, 2007 @02:49PM (#17831406) Journal
      There have been various kinds of approximations... The one I remember the most was Prince of Persia: Sands of Time. There was so little water in the game that the water they did have was very, very cool -- you could walk around in it, your footsteps would send out ripples... While those ripples may have technically been a flat plane, they did properly refract what was under them.

      And this was in a PS2 game. We could probably be doing much better already, if people cared that much.

      There was also a game called Lugaru, which was the farthest thing from "real" fluid dynamics -- yet, slash someone with a knife, and the wound would bleed a bit (leaving a trail of blood down the character's chest). Kill them with a knife, and your knife would likely drip blood, and the corpse would lie in a growing pool of its own blood. Technically less impressive -- this game can play on pretty much anything that can play Counter-Strike (the original, I'd guess) -- but all it really takes is an attention to detail.

      Kind of like -- remember how we all approximated shadows? You know, you'd have a spinning fan and a fixed light source, so you'd generate a spinning-fan-shadow texture and apply it to the wall behind the fan? Eventually, of course, we got machines powerful enough and someone clever enough that we can basically just do shadows any way we want (Doom 3, Quake 4), but until that happened, there were all kinds of cheap hacks we used to make it look as good as it could at the time.

      So, this is a long way from being done in games, but depending on how much attention you pay to those kinds of details, you should be able to make a game today which can look much better with respect to water -- just look at Prince of Persia.

      One final thing: It won't be applied everywhere. Just look at physics -- not every game is Red Faction, and including Havok (or ODE) doesn't automatically make your game a physics sandbox. Consider that both Half-Life 2 and Doom 3 use the same physics engine. Consider that in Doom 3, you can find an invincible 3-ring binder, which you can unload your entire arsenal of unholy weapons on, burn, explode, and chainsaw it till it's pitch-black, then wait around, and the black will fade into white, and it'll be good as new.

      So, you may have a little pond, or a bit of blood, which is approximated about right, but there will be exceptions -- it won't apply to the ocean, and it won't apply to every little dust particle...
      • Doom 3 doesn't use the Havok physics engine, they wrote their own physics engine along with the graphics engine. It works pretty well (as the Grabber in the expansion pack shows, but according to people who've digged a bit through the code, the defined object weights are way off in some cases. I think one of the worst examples is that the burger boxes in the game are heavier than the explosive barrels.
    • For us gamers, the cool application is clearly fluids in games.
      Speak for yourself. Personally I've always thought realism has been sadly lacking from hentai moneyshots. C'mon, all of you know it's the truth, even if you won't admit it in public!

    • Sorry, but you have no clue. You are speaking of ponds or oceans and there you normally don't need fluid dynamics, you need some form of wave mechanics. I just took GPU Gems 1 (from 2004) from my shelf and looked it up to make sure. Uru: Ages Beyond Myth already used a much more elaborate approach. It simulates the long waves as Gerstner waves and maps a normal map onto the resulting geometry giving the appearance of small ripples. So basically it uses a normal mapped height field, quite far from a "plane".

    • Throw a grenade in to water and watch it explode. :)
  • by Anonymous Coward
    I saw a presentation on this by Desbrun last year. The absolutely most amazing thing about the approach taken is that there are multiple naturally appearing ways to get values for different differential operators. This can let the cfd practitioner get a real estimate on numerical stability. That may not sound like much but in flows in which turbulence becomes non-negligible that is huge because it's hard to tell if what you see in the model is real or artifact. All that aside, he's a reasonably nice guy
  • by Rukie ( 930506 )
    Just one step closer to ignoring the real world and living in a virtual reality!
  • Funding (Score:5, Funny)

    by skinfitz ( 564041 ) on Wednesday January 31, 2007 @01:38PM (#17830492) Journal
    Like many technological advances, this could find funding from the porn industry...
    • Like many technological advances, this could find funding from the porn industry...
      It will always come from great length to have the advantage.
  • by dpbsmith ( 263124 ) on Wednesday January 31, 2007 @01:38PM (#17830496) Homepage
    The animations are impressive, but so was the animated water in Titanic and A Perfect Storm. I wish they had featured a comparison of the same animation, performed with the same computer resources, using the traditional and new methods.
    • I seem to remember seeing a tutorial on how that was done for Perfect Storm using 3dsmax, it used some very basic (built in even I think) plugins, and a lot of work by hand, and added particle effects, and then just good textures. and post production effects.

      That is totally not comparible to this simulation.
  • video is gone (Score:5, Informative)

    by brunascle ( 994197 ) on Wednesday January 31, 2007 @01:38PM (#17830504)
    hmm... the video i was talking about is gone, replaced by the 2nd one under "Multimedia." sorry about that. the other 2 are still good though. the smoke is in the first one. too bad, though, the snowglobe was great.
  • by cyberanth ( 952084 ) on Wednesday January 31, 2007 @01:39PM (#17830518)
    Ron Fedkiw at Stanford also has a lot of very impressive demonstrations of liquids, smoke, fire, cloth, rigid bodies, elasticity, and fracturing. The videos are definitely worth checking out: http://graphics.stanford.edu/~fedkiw/ [stanford.edu] I especially like the water being poured into the glass. It's nearly photo realistic.
    • by spoco2 ( 322835 )
      Thanks for that link, some pretty amazing simulations there! :)
    • It's nearly photo realistic.

      Yeah, I saw his work on Terminator 3, too. It looked like a real melting gynoid from the future!

      Sigh.

      OK, let's get serious now. Repeat after me: There is nothing "realistic" about the entertainment industry.

      Some corollaries:

      • Dialogue does not sound like real conversation.
      • Cops/FBI agents/spies don't really do that.
      • Real lightsaber battles don't take place on falling gantries above rivers of lava.
      • Real dinosaur-frog hybrids, orcs, aliens and talking ants... well, you get
      • Yeah, because once someone has dealt with Hollywood everything they ever have made and ever will make immediately becomes completely unrealistic. That's why someone who has worked on Terminator 3 can never create an almost-realistic-looking rendering of water being poured into a glass. It's also why Hollywood actors don't quite look like real human beings.

        ;)
    • These are absolutely incredible. I'm thoroughly impressed!!! --v/d+
  • by RobertB-DC ( 622190 ) * on Wednesday January 31, 2007 @01:41PM (#17830544) Homepage Journal
    While I'm sure the gee-whiz factor of more accurately simulating Lara Croft swimming is the hook for the story, shouldn't it at least pay lip service to real-world applications of this new technique? Wind-tunnel testing is one area that currently requires massive physical facilities, and would clearly benefit from this research -- air is a "fluid", too. You could even apply it to thicker fluids, perhaps devising new ways to fabricate items from glass or non-destructively test metal part designs for weaknesses that wouldn't have been otherwise revealed.

    Though the importance of properly modelling Lara Croft's swimsuit can hardly be overstated.
    • As I posted below at your level, this seems very similar current techniques in fluid dynamic simulations used in industry already. I'm wondering if they just applied that to games in a specialized form to get this. The few details the article gives seems to say just that.
    • It's not clear (Score:5, Insightful)

      by GuyMannDude ( 574364 ) on Wednesday January 31, 2007 @02:07PM (#17830898) Journal

      Remember that just because a simulated fluid flow "looks" more accurate, that doesn't mean that it is. The article isn't very technical at all so it's difficult to tell what's going on here. But the way it is phrased leads me to believe that they are solving new equations rather than using new techniques to solve the well-known traditional equations (e.g., Navier-Stokes, Euler, vorticity evolution equation, etc.). The result may be that the new equations are less accurate in a point-wise sense but the resulting gross observable features of the flow may look more natural. Your eye can't tell the difference between errors O(h) and O(h^2) where h is the grid spacing, but it can certainly tell if artificial viscosity from the numerical scheme causes obvious features of the flow, such as shock waves or density discontinuities, to diffuse with time.

      The applications you list require that the estimates of velocity, pressure, etc. come out accurately, and not that the resulting animated fluid flow passes the "looks plausible" test. When you're doing computational fluid dynamics solely for graphics, however, the pointwise accuracy doesn't mean squat; you want something that looks nice. I'm guessing that they've come up with a method that is optimized to make pretty movies at the expense of true numeric accuracy of the flowfield. But, again, the article is worded so generically, it's hard to tell what's going on.

      GMD

      • Re:It's not clear (Score:4, Informative)

        by pfafrich ( 647460 ) <rich&singsurf,org> on Wednesday January 31, 2007 @03:27PM (#17832080) Homepage
        The research group's publications [caltech.edu] might shed a bit more light on how this works.
      • Re: (Score:2, Informative)

        by carlossch ( 459196 )
        Jos Stam's stable fluids (SIGGRAPH 99) was one instance of a technique that looked better but wasn't exactly more accurate (specifically, Stam presented an unconditionally stable solver based on the Hodge-Helmholtz decomposition principle. Great for graphics, horrible numerical dissipation). Desbrun et al are solving Euler's equations for inviscid flow. The new thing is that their formulation of the equation on a discrete setting (solving it on a simplicial mesh instead of on a continuous field) provably co
      • Re:It's not clear (Score:5, Informative)

        by Pseudonym ( 62607 ) on Wednesday January 31, 2007 @06:38PM (#17835370)

        Remember that just because a simulated fluid flow "looks" more accurate, that doesn't mean that it is.

        In fact, just the opposite. The entertainment industry (e.g. animation/vfx) wants fluids that will obey a director rather than the laws of physics, while remaining as credible as possible.

        I have read the SIGGRAPH course notes. They are indeed solving the Navier-Stokes equations. Because this is for the entertainment business, they want to retain as much visual detail as possible while keeping the time step as large as possible.

        Previous approaches are based on techniques developed for astrophysics, meteorology and oceanography, where you don't care so much about the small-scale detail. To overcome this, previous approaches either modelled more viscous fluids, such as melting wax (see House of Wax for onex example) where there fine-scale detail dissipates quickly anyway, or went to some trouble to mimic the propagation of the detail. One common approach, for example, is to take the curl of the velocity field ("vorticity"), advect it, then add a bit back. Yeah, it looks pretty good.

        The main advances of this approach are two-fold. One is that instead of using Lagrangian particles or an Eulerian grid, they're using a simplicial grid which matches exactly the geometry of the environment, which means that interactions with the environment are exact.

        Secondly, and this is the key bit, rather than separate "a bit" of the vorticity, they treat it as a completely separate variable. The advantage is that the vorticity field, being the curl of a vector field, is inherently divergence-free. Previous techniques had to manually zero-out the divergence in a separate step, which was usually the expensive part.

        OK, if you didn't understand that, think about what's happening physically. The fluids that you generally care about in visual effects/animation are incompressible at the scales that you care about. Think of a glass of water, for example. Water in a glass isn't really incompressible, but it is close enough because the "speed of sound" in water is huge, when you consider the size of a glass and the length of a single frame of film.

        So the water is effectively incompressible, which means it has an effectively infinite spend of sound. That means that if you "push" it in one place, then for the water to conserve its volume/mass (volume is proportional to mass in an incompressible fluid, remember), displacement elsewhere will have to happen instantaneously. That means that in general, you can't just make decisions locally; there needs to be a step in the solver which propagates these pressure effects over the whole fluid in one step.

        The advance of this new method is hard to explain, but it uses a formulation that avoids this error-prone step completely. It's not free, since it requires that you convert between vorticity and flux. And it's hard to see how you'd model some of the more difficult forces like surface tension. But it's pretty impressive nonetheless.

    • by dbIII ( 701233 )

      shouldn't it at least pay lip service to real-world applications of this new technique

      Simulating fluid flow isn't paticularly easy in some cases - the only time I've ever seen an analog computer (patch cables to amplifiers acting as integrators etc) was to do this. It was set up next to a test rig of a long pipe and the settings on the computer were constantly altered to refine the model so it would match the test rig. Also this is talking about real time simulation which is something engineers and phys

  • They mention "discrete differential geometry" in the article. This sounds a lot like a finite element/difference approach to solving fluid dynamics problems. I'm wondering if they are actually just solving for true phenomena using a simple FEA code or the like. Later when they start talking about flux (really, they're talking about calculating vorticity), they mention this same sort of discritization used in engineering.
    • by bockelboy ( 824282 ) on Wednesday January 31, 2007 @01:59PM (#17830788)
      No, it has nothing to do with the finite element/difference methods at all.

      In fact, it's a fundamentally different approach from both of those methods. Finite element/difference means that you think of the problem as a continuous, smooth manifold. Then, you break the manifold into chunks (discretize) it, and you apply the "natural laws" like they would work on a smooth surface to the discretized approximation. The idea is that, the smaller the chunks, the errors becomes too small to notice.

      However, in some cases the discretization process causes quantities (like total energy of the system) to not be conserved. The little errors add up to a lot. In fluid dynamics, non-conserved quantities cause solutions to the systems that just look wrong to the casual observer.

      This team's approach is fundamentally different. Instead of discretizing a continuous problem involving a smooth manifold and continuous operators, they think of the problem as discrete to begin with and define operators on the discrete geometry. They don't say "apply the derivative to an approximation of a smooth surface", they say "apply this discrete derivative-like operator to this discrete surface". It turns out that if you define your discrete operators correctly, you can focus on conserving quantities (such as total system energy) that the normal approximation to the derivative won't.

      It offers no speedup in computation time, and probably has no parallelization opportunities beyond those normally there in fluid dynamics. However, it *does* produce better-looking solutions as all of the conservation laws are met.

      Very interesting research.
      • There are strong connections between mimetic finite differences and mixed (Raviart-Thomas) finite elements. I wouldn't say it has "it has nothing to do with the finite element/difference methods at all".
      • Since I'm a mechanics guy and I have very little experience with computational fluid dynamics, I may be completely wrong. However, this seems like something quite useful for analysis. Why can't you use the "discrete derivative-like operator" in analysis instead of trying to use a continuous version on a discretized domain? Could you eliminate the issues you mentioned of not maintaining conservation of energy, mass, etc. by using this method for the differentiation?
        • Re: (Score:3, Informative)

          by bockelboy ( 824282 )
          Having a "discrete derivative-like operator" was just an example of what one might do along these lines.

          They're not the only people to do this sort of research. I remember a (Los Alamos, I think) physics research team doing a similar thing with some of Einstein's equations. By taking a different approach, they got some of the conserved quantities to stay conserved in solutions.

          Not all approximations to the derivative are created equal. In fact, for smooth functions, the finite difference method is a poor
      • Re: (Score:3, Interesting)

        by jackbird ( 721605 )
        It offers no speedup in computation time, and probably has no parallelization opportunities beyond those normally there in fluid dynamics. However, it *does* produce better-looking solutions as all of the conservation laws are met.

        To us pretty-pictures guys, a better-looking solution in the same amount of time IS a speedup, because otherwise we crank up the quality higher and slow down the calculation in order to get the results we want.

        (Or fake it some other way - for example, Blizzard made a trailer for

    • Re: (Score:2, Informative)

      by samschof ( 928254 )
      With the disclaimer that I only gave the paper a cursory reading...

      It is similar. They use what is referred to as a consistent or mimetic discretization where the discrete operators have some of the same properties as the continuous operators, i.e. div curl v = 0 in the continuous case becomes DIV CURL v = 0 where DIV and CURL are the discrete version of the divergence and curl (i.e. matrices). It makes it easier to get local conservation. In this case, they focus on conserving circulation which is an

    • by Kerrit ( 1023859 )
      Here's [columbia.edu] a pdf of his presentation at SIGGRAPH. I've had to dabble a bit in fluid dynamics for wind modelling, but I confess that most of what's in there is over my head once they depart from more traditional discrete models.
  • The popups don't work for me for some reason. And no, it's not because I have disabled javascript (I haven't.)
  • by HotBBQ ( 714130 ) on Wednesday January 31, 2007 @01:42PM (#17830564)
    where are the new age boob animation/physics I've been waiting for?
  • Interesting (Score:4, Insightful)

    by edwardpickman ( 965122 ) on Wednesday January 31, 2007 @01:53PM (#17830694)
    but the real problem is speed. The quality is quite nice on current simulators it's speed that's a problem. They say the new math isn't faster just more accurate. For entertainment use we need faster not better specs. We need something similar to hardware excelloration that is now done with particle systems. In the old days particles took forever to render but with games and software like Maya they are generally live rendered. High quality live water would be huge for graphics and earth shattering for games. It's possible but it may take a custom core on a video card CPU to pull it off. Water is a big part of many games so it'd be worth dedicated water rendering on video cards.
    • Why would this not lead to potentially faster rendering? I didn't rtfa (presumed the server was on fire), but normally you can reduce the accuracy to improve speed, and possibly use a back-end interpolation to smooth the artifacts, then a sharpening step. The last two should be far less intensive than the CFD. The general flow and patterns would be accurate. As processors catch up, you bump the accuracy to match. I'll admit that I haven't messed with CFD models, but for FEA models, the above could certainl
  • ...is a pretty interesting field. The one class I took in it while getting my Aerospace degree made my head hurt, though. Playing with computer networks was much easier and it paid better :)

    ObLink [cfd-online.com]
  • Paper (Score:5, Informative)

    by MajroMax ( 112652 ) on Wednesday January 31, 2007 @02:12PM (#17830956)

    What the CFD-literate Slashdotters will want to read is the actual paper [caltech.edu] (warning, pdf) that the article is based upon.

    It's a neat method, but it's nothing revolutionary. The upshot is that their method tries to conserve vorticity (fluid spin) better than the other methods currently used for graphics, with the aim of getting rid of hacks that are now necessary to Make Things Look Good. The entire spin (no pun intended) in the article about "equations for computers, not for people" is journalistic sensationalism.

    All told, it's a vorticity-based Finite Element Method, which is solved as a sparse linear system. Cool pictures, though.

    • All told, it's a vorticity-based Finite Element Method, which is solved as a sparse linear system.

      Well, if one has to describe the paper using your words or "journalistic sensationalism", I'll take the latter, thank you.

    • Re: (Score:3, Insightful)

      It doesn't try to conserve vorticity better. It defines a discrete analog of continuous vorticity and it guarantees that this is precisely conserved (up to machine precision). The whole point of this work, and related work, is to define discrete systems where discrete analogs of standard theorems of calculus hold exactly. This deserves more than "It's a neat method, but it's nothing revolutionary". It's actually a pretty awesome approach. I don't know how good it is in other respects however.
      • This reminds me of David Brin's Uplift universe.

        In the Uplift universe, the mathematics of the advanced alien civilizations were based on integers. They did not have calculus, floating-point numbers, or infinities. Their mathematics were only intended for computers, which used discrete or quantized values that modeled atoms, etc., exactly.

        It looks like we might be heading in that direction ourselves. :)
      • It doesn't try to conserve vorticity better. It defines a discrete analog of continuous vorticity and it guarantees that this is precisely conserved (up to machine precision). The whole point of this work, and related work, is to define discrete systems where discrete analogs of standard theorems of calculus hold exactly.

        You're right, I made a mistake when I said that. What their model does do, is introduce (limited) numerical diffusion into the vorticity; that's a natural consequence of any explicitly

    • You're totally right -- this is journalistic sensationalism. Generally, you don't submit a paper to TOG unless you get rejected from Siggraph first. It seems like for the last few years, Siggraph has accepted 4 fluids papers (i.e. 1 session) per year. Those 4 are the ones that the brightest minds in computer graphics were the most impressed by.
  • These flash video players may be the rage of 2007, but the tiny pictures are barely visible and users can't resize them or slow down the playback like they could in the past.

    The liquefying character demo looks like it would be interesting if it could be slowed down.
  • Some may question the need for improvements in the field of animated fluids. But many forget that animated fluids are pivotal to the success of Hentai, in which they are used quite extensively and to good effect.
  • This is good news, because the "das boot" scene in Beerfest was incredibly fake-looking.
  • Anyone else noticed that these are really uber-cool demos ?
    I would like to see them working with some of the guys from the demoscene or vice versa,
    maybe they could learn some things from each other.
    if they dont already, that is :)
  • Well.... (Score:3, Insightful)

    by njord ( 548740 ) on Wednesday January 31, 2007 @08:31PM (#17836822)

    The Caltech folks' approach (and this is actually the work of one of Desbrun's students, Sharif Elcott) is actually more pleasing mathematically than computationally. This particular paper makes a special effort to develop an intrinsic formulation of the equations of incompressible fluids, which allows for fluid simulation on meshes of arbitrary topology. That isn't terribly useful - movies and games aren't typically interested in 2d fluid simulation on a torus embedded in 3d...

    Their approach is also closely tied to the properties of the static mesh, meaning that a lot of the "efficiency" that the method gains is the result of extensive pre-processing. If we want fluid with solid objects suspended in it, we're looking at a lot more computation.

    Additionally, the vorticity method they use requires a very accurate Poisson solve to recover the velocity. Previous approaches to incompressible fluids typically solved a Poisson equation, but this was to project the solution onto a divergence-free space. In this case, it is acceptable to "cheat" a little on this part and only partially eliminate divergence. The approach in this paper doesn't allow this without serious sacrifices.

    This paper deals with two models of fluid - incompressible, inviscid, Euler and incompressible Navier-Stokes. The latter is a widely accepted model for waters in reasonable conditions, but the former has no physical analogue. As a matter of fact, there are more efficient methods than this for solving so-called Poiseuille flow. They also claim great advantages over the popular "Stam advection" but their use of backward Euler integration is still going to be ridiculously diffusive, particularly when the CFL number is not obeyed.

    This may seem very negative of me, but I should add that I think this is among the very best publications on CFD in graphics. This paper should have been published when it was first submitted to SIGGRAPH 2 years ago, rather than be relegated to a non-conference TOG issue. It's really too bad Sharif is not mentioned in the article, since this is his work more than anyone else's.

    njord

Genius is ten percent inspiration and fifty percent capital gains.

Working...