Time offset instances (with subframes!)

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ก.ค. 2024
  • Covered this technique before in one of my courses, but having it as a separate video will make it easier to find for people who are actively searching for it. So whether or not this is new to you, hope you enjoy!
    Get the project files here to help support the channel:
    timvanhelsdingen.com/time-off...
    Regrowth tutorial series:
    • Regrowth - Growing Pla...
    Check out my website:
    www.timvanhelsdingen.com
    Support me on Patreon: www.patreon.com/timvanhelsdingen
    discord: / discord
    Check out more of my tutorials: www.timvanhelsdingen.com
    Instagram: timvanhelsdingen
  • ภาพยนตร์และแอนิเมชัน

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

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

    Amazing ! thanks mate.

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

    I was wondering if you are alive :D Great job, Tim.

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

    thanks!!!!

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

    good one! :)

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

      Haha well I guess you can tell where the inspiration for this one came from :P

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

    First of all thanks for your content! When i put the attribwrangle i've seen it offsets the abcframe for each mesh on my alembic, how would one do so it offsets all the parts of the mesh at the same time? I'm scattering animated alembics coming from other software so i don't want each part of the mesh but the whole mesh to be offseted.

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

    hi tim, thanks for the tutorial! but I have some trouble saving alembic.
    my alembic is saved without subframes. is there any option I have to check?
    + before the ROP Alembic output, it has subframes.

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

    Nice one as always! Im wondering how would the vex look if there was a mops fallof node before to activate the cubes?

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

      I believe mops also has it’s own time offset node (also using intrinsics) But in general it would just mean remapping a value. For example if you’d have a falloff value from 0-1 and an animation which is 3 seconds, you would remap the falloff with a fit01(@falloff, 0,3) and then use that in the intrinsic, then your animation would play across the falloff. I’m using this technique with a falloff as well in my GROW animation (on my channel) to grow some flowers based on a falloff

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

      @@TimvanHelsdingen got it, thanks! Really nice explanation🙏🙏✨

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

    Hey, Thanks for the content!
    If you are offsetting the imported cache per point and bringing in new geometry for each point are we not then eliminating the effeciency of using an instance? Mainly asking this because once I scatter more that a few points I get a fair bit of slowdown.

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

      Yeah that’s right. is not really meant for keeping efficiency of instances, because you’re not getting all of that. What you are getting is full control over the timing of your copies which makes this extremely useful. perhaps I could have picked a better title.

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

      @@TimvanHelsdingen no no your title was perfect, Thats what brought me here. We have used this method at our studio but for what ever reason we didnt think to randomise a offset for the frame number which is what got me thinking. Many Thanks

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

    **updated: Yeah, these are instances, just not the kind I thought they were. Thanks for the reply Tim!**
    I noticed your "pack and Instance" toggle is not checked (copy to points), so these are not instances. The intrinsics disappear once these are packed, unfortunately. Any way to work with packed instances?

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

      If you copy something that’s already packed (which the alembic is) you don’t need to pack and instance since that would double pack it. All of the copied boxes here are in fact instances.

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

    So how would you do this setup if you want to scatter the alembics but then control the start of animation per point from a trigger attribute?
    Say a trigger attribute that the grid gets from a mask from geo? Im having a hard time understanding how to get it all to work, part 1 is okay to get the mask from geo and a trigger attribute set up. but hooking that attribute up with a solver so that another attribute starts counting from 0 and upwards from the frame the trigger attribute is over 0 i dont understand.

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

      Are you trying to do this from a mask attribute that’s being generated in a solver?…
      You can create age attribute in for example a sopsolver by wriging f@age += @TimeInc
      You could for example have a growth happening on your geo, then say that age should start incrementing when the grow attributes is above 0. Then simply use the age attribute in your wrangle in sops to offset the primintrinsic.

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

      @@TimvanHelsdingen Thank you for your reply, i tried to create the mask before the solver. with just mask from geo. Im havent done to many projects in houdini so i am at the beginning of learning and not sure if im doing it the right way. i create a grid, a sphere that then goes into a mask from geo node. i get the mask attribute and i want to use this to start the animation. But when using this the animation on the first points work but as soon as the sphere applies it mask on the next point that animation is starting on the actual alembicframe that the timeline is on. therefore i would like to have a attribute trigger that starts from 0 and then counts upwards. What does the TimeInc do? do i need to plug in the previous frame to the attribute wrangle if i write it like you do?

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

    Hi Tim,i'm using redshift,if i check the "instance sop level packed primitives" option,the time offset will have no effect,what should i do?

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

      You should use the instance node on obj level and use instancefile to instance them instead.

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

    Howdini102? :3

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

      Yeah been really putting that off having I? haha. I was thinking of maybe making it a more modular thing that I can release in small parts instead of something of similar scope to 101. Because I already know what I want to cover but wasn’t sure on what to do for the end result yet to bring it all together.

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

      Ah well its good to hear that you havent forgot about it! I would love a series of videos just focusing 100% on VEX used in different scenarios & that covers most of the language features.

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

    One thing to mention here: Does not work with Redshift!

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

      Oops, totally forgot about that! yeah you’re right if you want to keep stuff instances. Still useful if you just have redshift treat it as regular geo though, i’ve always just used it like that.

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

      @@TimvanHelsdingen I used this workflow for my master thesis "simulation of plants based on algorithmic systems" and realized this issue 4 days before delivery :D

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

      @@junglingmitapfel2902 Oh damn xD how did that turn out? got it done in time?… When you mentioned it did ring a bell but it’s never posed an issue for me, but i guess if you really need to push thousands of instances that’s gonna be quite problematic xD

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

      you mean doesnt work with redshift proxies ?

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

      @@requa3314 the time offsets break once you turn on that redshift should use sop level packed primitives