FLIP Tank Basics for Beginners in Houdini

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ก.ค. 2019
  • Simulating a cube of water? Or simulating a larger body of water without changing much of that same scene? That's where the waterline comes in. I explain the basic concepts of FLIP tank simulations and then dig deeper into the waterline feature. The waterline can be used to render out an illusion of a larger body of water using that same FLIP tank cube of water.
    Fast and easy!
    FLIP Simulation Render Setup
    • FLIP Simulation Render...
    FLIP Simulation and Infinite Water Flow like Rivers
    • FLIP Simulation Infini...
    How to Generate Oceans in Houdini for Beginners
    • How to Generate Oceans...
    If you are completely new to Houdini, I have a more beginner course on FLIP Simulations which demonstrate the really basic concepts of FLIP sims in general.
    • FLIP Simulation for Be...
    #houdini
    #sidefx
    #physicalsimulation

ความคิดเห็น • 84

  • @jordanmikhail9817
    @jordanmikhail9817 3 ปีที่แล้ว +2

    One of the best channels to learn different techniques in Houdini. Great explanations and breakdowns. Keep up the good work. Cheers!

  • @skydrathik3329
    @skydrathik3329 2 ปีที่แล้ว

    This tutorial was fantastic! Rarely seen such a slow and beginner frriendly, well-explained tutorial! It was perfect - so thanks a lot!

  • @thatdarnsatan
    @thatdarnsatan ปีที่แล้ว

    What a great, simple, digestible intro. Just what I needed!

    • @bubblepins
      @bubblepins  ปีที่แล้ว

      Thanks for the tip and comment!

  • @PSProduktions
    @PSProduktions 3 ปีที่แล้ว

    Awesome content. Great presentation! Thank you so much!

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว

      Thanks for watching!

  • @nxn_art
    @nxn_art 4 ปีที่แล้ว

    Sooo thorough. Thank you so much!

    • @bubblepins
      @bubblepins  4 ปีที่แล้ว

      Thanks for watching!

  • @Daymanoahha
    @Daymanoahha 2 ปีที่แล้ว

    Super useful thanks for the energy making this :)

    • @bubblepins
      @bubblepins  2 ปีที่แล้ว

      It was fun! Thanks for watching!

  • @vamsikrishna7261
    @vamsikrishna7261 3 ปีที่แล้ว

    I am new to this channel and video, really I was impressed with your explanation,no one given this much detail on nodes thank you so much, keep going on for more videos to provide us.👍

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว +1

      Thanks for the awesome comment!

  • @marcor.cacereslopez3050
    @marcor.cacereslopez3050 4 ปีที่แล้ว

    nice tutorial, you explained very well how the node structure works, I only added an ocean spectrum to have waves on the tank

    • @bubblepins
      @bubblepins  4 ปีที่แล้ว

      I have a ocean tutorial too lol, I love the ocean tools in Houdini they are so fast!

  • @rohitsaibosetti8660
    @rohitsaibosetti8660 4 ปีที่แล้ว

    This is amazing tutorial for beginners.. thank you so much bubble pins team

    • @bubblepins
      @bubblepins  4 ปีที่แล้ว +1

      Thank you for the awesome comment! lol it's just me, no team

  • @justinhwharton
    @justinhwharton 3 ปีที่แล้ว

    Great tutorial, thanks!

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว

      Thanks for watching!

  • @hamidthephysicist6376
    @hamidthephysicist6376 4 ปีที่แล้ว

    Amazing . Thank you so much very helpful . +1 subscriber .

  • @psychedlicavfx6646
    @psychedlicavfx6646 5 ปีที่แล้ว +1

    Although I know a lot of this stuff, but you explain it much better than Ryan Goldade of SESI itself. Keep up the good work. Looking forward to your River flow tut!

    • @bubblepins
      @bubblepins  5 ปีที่แล้ว +1

      Thank you so much! What's SESI stand for?

    • @psychedlicavfx6646
      @psychedlicavfx6646 5 ปีที่แล้ว

      @@bubblepins "Side Effects Software Inc", SideFX's full corporate name :)

    • @bubblepins
      @bubblepins  5 ปีที่แล้ว +1

      @@psychedlicavfx6646 LOL Thanks, I didn't recognize the abbreviation

  • @DominicSpall
    @DominicSpall 4 ปีที่แล้ว +22

    Please stop speeding segments up. We don't know the relevancy of it as its a beginner tutorial...

  • @douaaal-mgoter5260
    @douaaal-mgoter5260 3 ปีที่แล้ว

    i love your videos

  • @XianJaxxon
    @XianJaxxon 2 ปีที่แล้ว

    First Off, really great tutorial. Thanks Much. For streamlining, you don't need 3 separate RBD solvers for each for your RBD objects. You can take all of those RBD objects and put them into a merge node, then pipe that into a single RBD solver.

    • @bubblepins
      @bubblepins  2 ปีที่แล้ว

      Yeah you're right, this was one of the earlier videos I created. I now know a lot more of Houdini compared to before. There is probably so many things I could have done to optimize the HIP file.

  • @KarelChytilArt
    @KarelChytilArt 2 ปีที่แล้ว

    Nice

  • @WaseemFitness
    @WaseemFitness 5 ปีที่แล้ว +3

    very nice there no tut in youtube explain thinks like you do thanks

    • @bubblepins
      @bubblepins  5 ปีที่แล้ว +1

      Thank you so much, you're too kind!

    • @tristanstier
      @tristanstier 3 ปีที่แล้ว

      @@bubblepins hes right tho i can only find like 3 good tutorial channels like urs.

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว

      @@tristanstier Thanks so much!!!

  • @kimmolaine665
    @kimmolaine665 4 ปีที่แล้ว +1

    Nice tutorial, thank you. Not 100% sure, but i don't think you need separate solver for each RBD object: bring them in, merge and pass that to solver. It should work.

    • @bubblepins
      @bubblepins  4 ปีที่แล้ว

      Yeah I had a little trouble with that part, I tried merging all 3 rbd objects together, but then the collision geo was all wrong. I think there's a better way. I think I should have used RBD packed objects or something like that.

  • @eric3020
    @eric3020 3 ปีที่แล้ว

    Great work! I am working on a cartoon about a certain fat bamboo eating bear and this is helpful for us!

  • @srikanthrathod5772
    @srikanthrathod5772 2 ปีที่แล้ว

    It's my luck that I got this channel and I have subscribed you and I have general question is that I heard that houdini uses vex and python and I just know basics of c and c++ should I learn python and vex if yes ,should we learn this languages while learning houdini or after it

    • @bubblepins
      @bubblepins  2 ปีที่แล้ว

      That's perfect! If you already know the basics of c and c++, you probably defeated half the battle with VEX. I would suggest learning some more VEX first and get into python soon. Because when comparing python to VEX, python is a lot easier. After you learn all the hard VEX stuff, python will seem like a breeze for you! And most of python is very useful for parameter setups and stuff like creating HDA's. VEX will directly help you with the 3D modeling, which I believe will give you a much more satisfying reward.

  • @olgaps78
    @olgaps78 ปีที่แล้ว

    Please help. I followed the exact steps but at 3:04 where you connect the flipobject to output you get the water in the viewport but I don't. How can I get it to work?

    • @bubblepins
      @bubblepins  ปีที่แล้ว

      Is the flip object connected to the output node? Because that cube of water is the Houdini default object, you'll get that no matter what, unless Houdini has changed, because this video is quite dated. hmmm... double check if you have the output flag on the /obj context as well and double check there's that orange output flag on the output node you see on 3:04. See if this helps. I'm not sure why you wouldn't see the default cube of water.

  • @KO28JOJO
    @KO28JOJO 3 ปีที่แล้ว

    Another great tutorial! Thank you Bubble! Is there any chance to have oliver floating ?

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว

      Thanks!
      This one was pretty old. You should check out the newer one about blending Oceans with Flip, that was from a couple months ago.

    • @KO28JOJO
      @KO28JOJO 3 ปีที่แล้ว

      @@bubblepins I am tackling tutorials for flip sim from the start to end to understand it. I never used it before. But thanks I am reaching to tut in a couple of vids.

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว +1

      @@KO28JOJO Nice! I love how you are continually learning! I've actually been thinking of doing a new flip tutorial for mapping UV's to Flip Fluids. I played around with it a bit and really liked it: twitter.com/BubblePins/status/1418037147244941314?s=20

    • @KO28JOJO
      @KO28JOJO 3 ปีที่แล้ว

      @@bubblepins Thanks! Would not do it without a great teacher.

  • @jono8326
    @jono8326 3 ปีที่แล้ว

    Hi, thanks for the tutorial. Do you know how to create a flip sim inside a bottle? I would like to the water flow within the bottle only. Thank you!

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว +1

      Thanks! Try watching my other video on Flip Rivers which is similar to what you want except if you're doing a bottle it's even easier, because there's less water current flowing. In the other river video, I carve out the shape of the river, so this can be the bottle, then I fill the inside with water, by setting the initial water body, NOT by flip pop! This is important, because it'll save you a lot of CPU cooking time. I think you'll find the beginning of the river video useful for your case, but the last half of the river video, is more focused on water current and may not interest you. So just watch the first half:
      th-cam.com/video/AM5LqXjmKlA/w-d-xo.html
      Hope that helps!

    • @jono8326
      @jono8326 3 ปีที่แล้ว

      @@bubblepins thank you so much! I really appreciated. Keep up with the great contents!

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว +1

      @@jono8326 Thanks so much!

  • @valovanonym
    @valovanonym 2 ปีที่แล้ว

    Hello, I started following your beginner tutorials recently and thanks a lot, I'm finally understanding the things I do in Houdini, you are very clear in your explanations. But with this one, when using the narrow band, it does not stay suspended and instead falls like a body of water. I tried to compare your file with mine but I cannot understand what I'm doing wrong. And I found nothing helpful on the internet to fix this problem :/ could you please help me? I followed your tutorial step by step but maybe I missed something even though I watched it multiple times.

    • @bubblepins
      @bubblepins  2 ปีที่แล้ว +1

      Hi, sorry for such a late reply! There's been a lot of family errands to run over the Christmas weekend, I didn't get a chance to check my comments! The narrow band is a little tricky to setup, because there's a lot of parameters in different nodes that need specific parameters to be set. In the video, I made a short summary of the main areas that need to be setup, have you double checked with these parameters at 14:15? And it also needs an ocean source node to source the flip tank, which is a little different from normal flip sim's that usually use some sort of geometry as a source. Let me know if you have these setup and if you still have the issue?

    • @valovanonym
      @valovanonym 2 ปีที่แล้ว

      @@bubblepins No worries, You replied super quickly, thanks a lot! I hope you had great hollidays.
      I checked my file again, node by node, and it turned out that the object merge node to import the surface volume in the sim context wasn't properly set up... a stupid mistake, as often in programming.
      Anyway, thanks a lot, I love your work!

    • @bubblepins
      @bubblepins  2 ปีที่แล้ว +1

      @@valovanonym Thanks!

  • @KardelenBabal
    @KardelenBabal 4 ปีที่แล้ว

    how do you make the edges of the water look round ? like the tank was beveled or something..?
    also, du you know how to export a vector/velocity filed for the whole sim instead of just one frame ?

    • @KardelenBabal
      @KardelenBabal 4 ปีที่แล้ว

      aand how can I make oliver collide with the bounding box auf the fliptank ?

    • @bubblepins
      @bubblepins  4 ปีที่แล้ว

      You can create a beveled tank before filling it with water and it'll naturally take the shape of the tank, or you can play around with the particlefluidsurface node because that's the node that turns the water from particles into a water geometry to be rendered out. Or you can simply drop down a remesh node after the particlesfluidsurface and then drop down a polybevel node, and manipulate the water geometry like any other geometry, however this way is VERY costly so I don't recommend it at all since it has to do new calculations every frame.
      Exporting velocity field from Houdini, I haven't tried this before. I actually never thought about this, interesting idea! I am usually trying to import velocity fields into Houdini to simulate. May I ask what software are you importing into?
      If you're trying to export the animation, like the fully cooked simulation and you're using some 3rd party software for rendering, you'll need to export the stuff AFTER the particulefluidsurface, because by then the water has already been turned into geometry, which makes it compatible with almost any 3d software. You can use Alembic export. You can do this two ways, File -> export -> Alembic. Or drop down a Alembic ROP node to export the geometry.
      You can also choose to export the particles instead of the whole geometry and use the 3rd party software that you're trying to import into, that 3rd party software will need to have the ability to convert the particles into geometry, meaning that you will be bypassing the particlefluidsurface (not using it). How you do this, will depend on the 3rd party software you're using.
      Hope that helps!

    • @bubblepins
      @bubblepins  4 ปีที่แล้ว

      @@KardelenBabal Drop down a static object inside the dopnet and plug in the flip tank geometry into the SOP parameter of the static object node. This way Oliver (rbd objects) will collide with the static geometry.
      Now comes the question how are you going to get the flip tank geometry (the container), because in this video I use the ocean source node to create a narrow band flip tank to avoid filling the whole tank with particles therefore optimizing the scene making it faster for cooking sims.
      There are a couple of ways on top of my head to do this:
      #1: Create a box and just match the size of the flip tank, which you have all the info in the ocean source node, in the size & center parameters. You can just copy these parameters over to a box or something and use this as a static geometry, however you need to adjust the top part of the box so it's taller, because I drop the teddy bears from a very tall height. You can either open up the box top part and just poly extrude the box to the outside (this is important). Don't extrude it inwards, because then it'll overlap with the fluid.
      #2: You can convert the volume (surface) primitive (that's the "OUT_tank_surface_vol" node) that comes out of the ocean source node into a geometry, then this will be a more efficient tank, because every time you update the tank, it'll update everything automatically, however you STILL need to adjust this geometry box so that the top part is open. Because the Oliver bears are being dropped down from above.
      So to convert the volume (surface) into a geometry, if you do choose to do it with the #2 way:
      Drop down attribute wrangle, choose primitives, type in:
      @name = "density";
      Drop down convert vdb, choose convert to VDB
      Drop down another convert vdb node, choose convert to Polygons.
      Then if you want to render the geometry out, you'll need to fix the normals, because the convert vdb node flipped the nodes since this is an SDF. I don't go into details about the SDF, that's in another video if you're interested:
      th-cam.com/video/rGNtGkuZdsA/w-d-xo.html
      So in order to fix the normals for rendering, drop down a reverse node after that. This should give you a tank that you STILL need to modify the shape to open up the top part to drop down the Oliver teddys. Just blast the top opening and polyextrude it outwards, remember to check the Output back side in the polyextrude node!
      Hope that helps!

    • @KardelenBabal
      @KardelenBabal 4 ปีที่แล้ว

      @@bubblepins thank you so so much, this is very helpful !
      I will definitely try those out. It's sometimes so hard to find such concrete information when it comes to houdini..
      I am going to export a vertex animation texture which will be imported into unity. I was asked to export a velocity field so it can somehow be used in unity, though that's not my area of expertise :D just trying out a few things, I'm pretty new to houdini.
      thanks again for such detailed answers, +1 sub ! :)

  • @therealkevinleee
    @therealkevinleee 3 ปีที่แล้ว

    can you make a tutorial about icecream and toppings. getting RBD to worj with a fluid sim is quite hard and no one really has a good tutorial

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว +2

      I had this idea of making this space scene one day, but with a comedic twist where the spaceships are made of desserts and when they crash together the toppings would fly off like debri. Maybe one of the ships can crash into the moon that is made up of icecream! I'm just brainstorming, your comment trigger an impulse idea that I could add to this scene that I've been thinking about for awhile now.

    • @therealkevinleee
      @therealkevinleee 3 ปีที่แล้ว

      @@bubblepins omg that sounds so fun!

  • @benwilson2446
    @benwilson2446 11 หลายเดือนก่อน

    Hello. I'm trying to retime this sim but it's not working. Do you have a tutorial on the retime node?

    • @bubblepins
      @bubblepins  11 หลายเดือนก่อน

      Not just on retiming, but there's a time wrap node in Houdini you can use to tweak the timing of the scene. That way you don't have to resim it everytime.

    • @benwilson2446
      @benwilson2446 11 หลายเดือนก่อน

      @@bubblepins Thanks so much for your reply. I'll look into the time warp node. Thanks again.

    • @bubblepins
      @bubblepins  11 หลายเดือนก่อน

      @@benwilson2446 You're welcome! Try throwing down a file cache node to cache out your sim first just in case it wipes it out that way you don't have to resim. I love the time warp node, it saves me a lot of time when I'm animating with kinefx motions.

  • @bartvandoornik4685
    @bartvandoornik4685 4 ปีที่แล้ว +1

    thanks, as a beginner this is going to fast. You say "obviously" a lot. but it is not obvious as a beginner at all. Would be great to take it one step back and explain more. Thanks for making the videos though.

    • @caveman357
      @caveman357 4 ปีที่แล้ว

      There's alot of that in this cg world. Alot if guys talk as if your on their level, and it can be frustrating while learning, but if you want to be in this industry, you gotta be tough. When a supervisor or fellow artist tells you, that your work sucks, and you gotta make it like " this" is hard to take too. But you have to be tough. Be a man, take it in the chin, and hammer through it

  • @shadowmo3
    @shadowmo3 3 ปีที่แล้ว

    how would I make the tank leak water from one side. Like if it was glass and it broke on the side of it?

    • @bubblepins
      @bubblepins  3 ปีที่แล้ว

      The flip object has a boundary axis you can choose which side of the tank you want water to flow through and which ones to block water.
      Hope that helps!

    • @shadowmo3
      @shadowmo3 3 ปีที่แล้ว

      @@bubblepins Great, thank you so much!

  • @Murathanaksoz
    @Murathanaksoz 2 ปีที่แล้ว

    why you speeded up ?

  • @Freefx_07
    @Freefx_07 2 ปีที่แล้ว

    this tutoria still work for Houdini 19 ?

    • @bubblepins
      @bubblepins  2 ปีที่แล้ว +1

      Yes it will, I just tried cooking the HIP project in H19 and it looks fine.

    • @Freefx_07
      @Freefx_07 2 ปีที่แล้ว

      @@bubblepins GREAT

  • @markf6639
    @markf6639 3 ปีที่แล้ว +2

    I really do not understand your rhyme or reason for speeding up a "beginners" video tutorial. The nature of video tutorials already requires a lot of pausing and restarting the videos, your unnecessary speeding up of the videos causes a lot of frustration for those trying to follow along. Even with slowing the playback speed to 25% it's still nearly impossible to follow along without going over the sped up parts repeatedly. A shame because this would be a great tutorial otherwise.