Foreach Loops in Houdini for Beginners

Поделиться
HTML-код
  • Опубликовано: 17 сен 2019
  • In this video, I demonstrate how to create an unique model using just the foreach node. I compare how the for loop in coding VS foreach node in Houdini.
    Download Houdini File & Javascript code:
    bubblepins.com/blog/loops-in-...
    SideFX Documentation for Loops:
    www.sidefx.com/docs/houdini/m...
    #houdini
    #sidefx

Комментарии • 101

  • @Cloroqx
    @Cloroqx 3 года назад +6

    You are by far one of the best Houdini teachers on RUclips. Everything is thoroughly and calmly (not frantically like with most spazzy Houdini artists) explained and easy to follow along with.

    • @bubblepins
      @bubblepins  3 года назад

      Thanks for the awesome comment!

  • @gtrzdaddy
    @gtrzdaddy 4 года назад +13

    Whoa~ by far the most easy to understand Houdini tutorial ever!

  • @anroidanicver6783
    @anroidanicver6783 Год назад

    This is so well thought out and well talked through, best Houdini tutorial I’ve seen yet.

  • @pankajswani3d
    @pankajswani3d Год назад

    This is the best way to teach a beginner, while watching I had confusions and she explained it in very next seconds.
    Loved it.

    • @bubblepins
      @bubblepins  Год назад +1

      Thanks! You'll love the for loops in Houdini, it comes in handy for procedural modeling so much!

  • @quoiquedon7002
    @quoiquedon7002 2 года назад

    Thank you very much! This is the most comprehensive tutorial on "for each loop" I've ever found.

    • @bubblepins
      @bubblepins  2 года назад +1

      Thanks for watching! I'm going to make another "feedback foreach loop" coming soon! Stay tuned!

  • @alexchiang8593
    @alexchiang8593 3 года назад

    Ik this video is two years old but thank you so much for doing this. My current 3D prof is boring as sin and is explaining all of this in a very confusing way. You keep things simple and you enlarged the node window so I can actually see what's going on. Great Job!

    • @bubblepins
      @bubblepins  3 года назад

      Thanks! Yeah I made the node window larger on purpose, you are the first to notice that! I figured people would want to see the nodes more than the 3D viewport, because it's a tutorial and everyone watching probably wants to recreate the nodes. Thanks for the awesome comment!

  • @Stenjus
    @Stenjus 4 года назад

    The way you going over it makes this really easy :) Thank you

  • @PauloCesarDuarte
    @PauloCesarDuarte 4 года назад +1

    Very helpful, thanks. Waiting for more videos...

  • @RonnieMirands
    @RonnieMirands 3 года назад

    Wow! A lot of people need this: Houdini concepts made simple. Like you did. Thanks and Congrats!

    • @bubblepins
      @bubblepins  3 года назад +1

      Thanks so much for the awesome comment!

  • @mjparent222
    @mjparent222 4 года назад

    I really appreciate your detailed explanations. Thank you.

    • @bubblepins
      @bubblepins  4 года назад

      Thanks for all the awesome comments! I'm really glad you're enjoying all the videos!

  • @aeko
    @aeko 3 года назад +8

    7:00 - Every time you do this merge with Fetch Feedback you're duplicating the input. So it goes exponential which is why Houdini runs out of memory. Each iteration: 2 boxes, 4 boxes, 8 , 16, 32, 64, etc.

  • @felipe_ai
    @felipe_ai 4 года назад

    Love your videos!!!

  • @maurypb
    @maurypb 2 года назад

    This is very helpful in demystifying the settings of "feedback" vs "merge". Thanks!

    • @bubblepins
      @bubblepins  2 года назад

      Thanks! I've been planning to create a new video on more details on the feedback foreach loop and how to use it for procedural modeling. Hopefully that'll be released soon!

  • @quinnzhou8730
    @quinnzhou8730 Год назад

    This is the most clear tutorial for foreach loop! Thanks so much!

  • @Smoluck
    @Smoluck 3 года назад

    Really great and Polished Tutorial Bubble Pins. Thanks

  • @letrang2183
    @letrang2183 4 года назад

    Im crying watching this at night, tricky thing but you make it easier to understand, thanks

  • @squantrill
    @squantrill 4 года назад

    Yep these for loops are tricky little monkeys to grasp at first. This has really helped me. thank you.

  • @SnutiHQ
    @SnutiHQ 3 года назад

    Thank you for spoon feeding me this for loop, really takes a bit of time to sink in, when you are used to coding! 😅 👍

    • @bubblepins
      @bubblepins  3 года назад

      I agree! In coding it seems like it's so different, but once you get over that hoop, you'll realize it's the same but with visual nodes.

  • @serialvision
    @serialvision 3 месяца назад

    Great tutorial! thanks for sharing

    • @bubblepins
      @bubblepins  3 месяца назад

      Thanks for watching!

  • @artadecram_9624
    @artadecram_9624 2 месяца назад

    Very detailed!!! Cool!!!! I need more!!! :)

  • @awesomeguitarshorts
    @awesomeguitarshorts Год назад

    Great Tut !!! Thanks a lot !!!

  • @StriderSeiryuu
    @StriderSeiryuu 4 года назад

    whahh i finally understand this node
    thanks a lots

  • @OnkAnCa64
    @OnkAnCa64 4 года назад

    A really big thanks, after few days, to cry with thoses loops, Victory!

    • @bubblepins
      @bubblepins  4 года назад

      Awesome!

    • @OnkAnCa64
      @OnkAnCa64 4 года назад

      @@bubblepins, everything is clearly explained, I hope that will the same for your other videos ^^ have a nice week end

    • @bubblepins
      @bubblepins  4 года назад

      @@OnkAnCa64 Thanks! Stay tuned for a Mantra tutorial Part 1 video that should be released tonight... I just have a couple of last things to edit

    • @OnkAnCa64
      @OnkAnCa64 4 года назад

      @@bubblepins, for sure even if I work for the game industry, it's always interesting to learn something. About game, if you have some times to make a deeper video on creating hda, thanks in advance ^^

  • @MrJayVFX
    @MrJayVFX 3 года назад +2

    This is a pretty good tutorial. I came to learn and I did. However, I recommend you write down/organize your thoughts and/or re-record certain sections if you need to. The part where you were explaining the merge each iteration vs feedback each iteration, it was completely jumbled and you ended up having to re-explain things because of unexpected results, like when the first cube was NOT copied because your merge was taking the iteration before the translation.. Everything made sense, but it was quite messy.
    BUT.. I thank you. I did learn more about for-each stuff.

  • @vahidkani4197
    @vahidkani4197 2 месяца назад

    Thanks for the video.

  • @L..24
    @L..24 2 года назад

    wow you are so good at this

  • @ll6a6
    @ll6a6 3 года назад

    Best Explain ever. Thank you.

    • @bubblepins
      @bubblepins  3 года назад

      Thanks for the comment!!

  • @kasali2739
    @kasali2739 4 года назад

    super explanation

  • @alexandraternovskaya1460
    @alexandraternovskaya1460 2 года назад

    Thank you for your video! Now I understand something

    • @bubblepins
      @bubblepins  2 года назад

      Thanks for watching! I'm working on another tutorial about Feedback Foreach Loops, hopefully I can get that out soon.

  • @alexanderkingkwame241
    @alexanderkingkwame241 2 года назад

    This was really helpful, God bless ya, love ya

    • @bubblepins
      @bubblepins  2 года назад +1

      Thanks!

    • @alexanderkingkwame241
      @alexanderkingkwame241 2 года назад

      @@bubblepins n also try n check ur inbox @instagram, I sent a message

    • @bubblepins
      @bubblepins  2 года назад

      @@alexanderkingkwame241 I don't think I got your message. And I didn't know IG has a message box! Double check if you have the right alias, there's another bubblepins on IG. My IG is: instagram.com/bubble_pins/ with an underscore.

  • @Arne1998
    @Arne1998 3 года назад

    thanks!

  • @raneemFX
    @raneemFX 4 года назад

    Best 👌

  • @kourage94
    @kourage94 4 года назад +2

    I was using this foreach loops correctly already, but I have the feeling I will use it even more correctly now lol

    • @bubblepins
      @bubblepins  4 года назад +1

      It's all good as long as it works!

    • @kourage94
      @kourage94 4 года назад

      @@bubblepins Your way to explain is great =), it's really entertaining. I'm learning VEX at the moment and it would be so good to get some kind of tutorial like that about "pcopen", "pcfind", get an attribute from another point etc... of course it's just an idea ^^.
      Thank you

    • @bubblepins
      @bubblepins  4 года назад +2

      @@kourage94 Yeah definitely I want to dive into VEX and hopefully soon get into CVEX for Houdini. Just building it all up. Right now I'm finishing up one last video on RBD Tools Guided Sim then pyro, then I am going to fulfil one of the requests that I got about explaining a chipping cube animation I did before and there's a camera tracking. And then I think I got most of the basics of Houdini covered to prep me for VEX. Long list ... But will get there soon. Stay tuned!

  • @nihatozdemir445
    @nihatozdemir445 4 года назад +1

    thanks you

  • @KarelChytilArt
    @KarelChytilArt Год назад

    Thank you

  • @fernandacavenaghi5918
    @fernandacavenaghi5918 3 года назад

    thank youuuuuuuu :D

  • @FeatherandtheWind
    @FeatherandtheWind 4 года назад +1

    Really enjoy your tutorials. Thank you. I hope you make more. I have a question... What's the point of the output null node in this project?

    • @bubblepins
      @bubblepins  4 года назад

      Thanks for watching! The output null nodes are just for organization, because as the projects get bigger, its good practice to put null nodes to indicate what the networks. The name "OUT_" helps find the output nodes later when you need to link the networks and makes it easier to find it in a list because the nodes are usually listed alphabetically.

    • @psychedlicavfx6646
      @psychedlicavfx6646 4 года назад

      @@bubblepins another possible use of nulls is to have them act as the "OFF" node with the Switch SOP :)

    • @bubblepins
      @bubblepins  4 года назад +1

      @@psychedlicavfx6646 Yeah good point! When you got like a dozen of things to toggle on and off, it comes in super handy!

  • @user-vs9sl2nz8h
    @user-vs9sl2nz8h Год назад

    you saved my life

  • @dannys_85
    @dannys_85 Год назад

    thanks great video perfect explanation, i have some object in houdini and for each of this object i want to store the size of object in array but without lack i do merge each iteration but i am getting just first iteration of the size multiple times can you help?

    • @bubblepins
      @bubblepins  Год назад

      I believe you want a feedback foreach loop. To my understanding you want to feed in the same object into the foreach loop multiple times applying the block stuff again and again in an array of some sort? A feedback foreach loop will take the result of 1 iteration and feed it into the next iteration until the foreach loop is done. I did a mini-series on feedback foreach loops:
      ruclips.net/p/PLqovuMX-teVNe0lstXx1XEYuoS3FnR3Gh
      Hope this helps!

  • @ertar0
    @ertar0 2 года назад

    thank you

  • @ananan4469
    @ananan4469 4 года назад +1

    I came as soon as the alarm went off :)

    • @bubblepins
      @bubblepins  4 года назад

      Thank you! Best fan ever!

  • @emepicuta3899
    @emepicuta3899 4 года назад +1

    Hello again! Has ever happened to you that when doing this "for each loop" with booleans substracting spheres from other objects, with over 1000 instances in 6 or 7 meshes, somehow those meshes start appearing hollow? Like if there was so much to calculate that it empties some meshes by mistake or smth. Do you know if there is a solution?

    • @bubblepins
      @bubblepins  4 года назад

      I don't recall hollowing spheres happening to me, but I remember that Houdini crashed on me several times when I ran the scene too long for more instances and more meshes, due to the growing polygon count as it cooks forward. In my case where HOudini kept crashing, I believe it was because I ran out of memory and couldn't handle the large polygon count. You can try converting the polygon to a vdb and replace the boolean with a vdbcombine and do a vdb union or vdb subtract. See if that will help? This helped me because vdb's are more memory efficient, but I don't know if it'll help with your hollowing spheres. Let me know how it turns out!

    • @aeko
      @aeko 3 года назад

      7:00 - Because every time you do this merge with Fetch Feedback you're duplicating the input. So it goes exponential which is why Houdini runs out of memory. Each iteration: 2 boxes, 4 boxes, 8 , 16, 32, 64, etc.

  • @bearstudios101
    @bearstudios101 4 года назад

    How did you add the block begin node into the for each connected piece. I'm struggling to get that

    • @bubblepins
      @bubblepins  4 года назад +1

      It should be dropped down automatically when you choose for each number, but you can also manually drop down a "block begin" node from the Tab menu and then hook up the newly "block begin" node with the foreach group by selecting the foreach group just like how its shown at 23:47 in the video.

    • @bearstudios101
      @bearstudios101 4 года назад

      Thanks alot. Whatever they are paying you it's not enough.

  •  4 года назад +1

    OOHHAAAAA how many tutorial Videos I had seen in my life like Pluralsight Gnomon and others but.. believe me I just opened my mouth while I am watching this tutorial it is so amazing explaining like illusion
    thank you so so so much
    int thanks;
    for(int i=0; i

    • @bubblepins
      @bubblepins  4 года назад +1

      Thank you for the gracious comment!
      int urWelcome = 0;
      for( int j=0; j

  • @Iknoursiingh
    @Iknoursiingh 4 года назад

    what is meta data node for??

    • @bubblepins
      @bubblepins  4 года назад +1

      The meta data node is for the attributes in the details that the foreach loop creates. It has values for the iteration number available if you need to use that within the foreach block.
      Hope that helps.

  • @armantalee9359
    @armantalee9359 3 года назад

    It has been a year since this tutorial was released but i still cant find thoes 2 upcoming videos( 26:24)

    • @bubblepins
      @bubblepins  3 года назад

      It's right here:
      ruclips.net/video/rGNtGkuZdsA/видео.html
      It's titled, "SOP Solver for Beginners in Houdini"
      Hope that helps!

  • @user-xjcltmddn
    @user-xjcltmddn 4 года назад

    Can you make grains tutorial?

    • @bubblepins
      @bubblepins  4 года назад

      I'll add it to the list, but it's a very long list... May take awhile before I get on it.

  • @videocmevideocme5675
    @videocmevideocme5675 4 года назад

    I think adding a merge node with feedback each iteration will NOT do the same as changing the for-each to merge each iteration. You will have more than one cube in the same position, the way you showed when four cubes looked like three. Taking out the merge node and changing the for-each to merge each iteration does not give overlapping cubes.

  • @JelezoNah
    @JelezoNah 4 года назад

    This voice is too good for such boring things.

  • @aeko
    @aeko 3 года назад

    7:55 - Sorry, but this is not correct. You can compare the difference between having a merge in your For-Loop and the isolated result of Merge Iteration if you pack your geo before the loop. The number of Prims in the geo spreadsheet is drastically different. Merge each iteration will create 4 prims for 4 iterations, meaning each iteration result is isolated and merged. Feedback Each Iteration with a Merge in it the way you have it will create 16. prims and it will go exponential.
    If you want to keep the first object, then you should merge in the initial geo after/outside the for loop.

  • @dynamo2014
    @dynamo2014 3 года назад

    finally you havent 10 spheres 10 times on each cube. Check it. You have 10 iterations on all your cubes