14 - The secret of cloth simulation

Поделиться
HTML-код
  • Опубликовано: 26 окт 2024

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

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

    Thank you so much for all the effort you are putting into each of these tutorial. it is absolutely great!

  • @DrTheRich
    @DrTheRich 2 года назад +8

    I'm curious how to add other important features to this, (self)collision, wind forces and turbulence, air drag etc. And how to connect it dynamically to other physics objects.
    I guess we'll see this in the future

    • @TenMinutePhysics
      @TenMinutePhysics  2 года назад +13

      I plan the next tutorial to be about cloth self-collision handling

  • @kunqian7069
    @kunqian7069 2 года назад +2

    Very nice tutorial. Looking forward to tutorials on dynamic topology change (tear, fracture)

  • @samuelyigzaw
    @samuelyigzaw 2 года назад +8

    Great series! I'm wondering if there's a way to implement soft bodies, cloths, strings, and particles (e.g. for fluids), in a way that allows for easy transformations from one type to another. Essentially, treating soft bodies, cloths, and strings as nothing more than meshes of particles that can be deformed and torn apart to create other soft bodies, cloths, and strings, but all cloth and string behavior is emergent from the same physics as the soft bodies, plus the fact that they're thinner or completely flat. This would really be great to build a game where players are able to modify the world in any way they would like in order to build anything.

    • @TenMinutePhysics
      @TenMinutePhysics  2 года назад +2

      Sure, your imagination is the limit. Just try it!

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

    the channel that just keeps on giving

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

    I would love to see a video talking about your small step XPBD paper. Especially how to handle collection detection. Great job on this channel by the way!

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

      The "Small Steps in Physics Simulation
      " paper? Would love to see this as well. I'm left with several questions after reading it. If you've read it and want to discuss, please tell me :)

    • @harold425
      @harold425 2 года назад +2

      @@mytino I read this paper as well yes. I found it pretty clear, to the point where I was able to implement it into my cloth sim. The only piece I'm missing is how to handle collision detection efficiently with this method. Running it for every sub step kills the performances. If I do it only once in a while I get some flickering.
      If you have specific section of the paper where you have questions, please leave a message here. I would be happy to help if I can ;)

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

    Great video! What do you mean by "weak in flat state" at 2:55? That it's harder to keep it straight against gravity for example? Is this weak vs strong issue present in the 2D case as well?

    • @TenMinutePhysics
      @TenMinutePhysics  2 года назад +2

      Thx. I will talk about in a future tutorial. Weak means the force is weak to restore the angle when the triangles are in the same plane - stretched out. This is because the force of the diagonal is in the same plane too. The forces of an angular constraint are perpendicular to the common plane.

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

    Is there any place we can ask you questions about PBD in general? Would love some kind of Q&A page where devs can ask about various PBD aspects! Would be very valuable! I've been diving deep into PBD in my sparetime, reading papers and implementing. Having a lot of fun, but got many questions, for example regarding unification of constraints, e.g. constraint order, local vs global relaxation, what constraints to pre-stabilize etc., and very curious about the incredible method in your "Small Steps in Physics Simulation
    " paper!

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

      I just created a discord server here discord.gg/A8ANf82r

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

      @@TenMinutePhysics Perfect!

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

      @@TenMinutePhysics looks like invite has expired, can i have a new link?

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

    Awesome ! Thanks a lot!

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

    Really nice work :), Matthias. I am a researcher and doing an explicit tracking survey. I wonder if you can share your implementation of grid-free tracking method? I would be pleased to have it for a comparison :).

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

      Sorry, we haven't open sourced that code. But we did a SIGGRAPH course and survey on explicit surface tackling already.

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

    Do I see similarities to Two Minute Papers here?

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

    Amazing explanation. Thanks. Do you think that shrink and grow the constraints connections along time could work in your implementation? In blender the cloth solver is very old, there's an option there called "Shrink" to control the cloth size via simulation with vertex groups also...
    I'm following your youtube channel and I see you implementing some things into blender... I'm very curious about it(specially softbody)... are you working in Sofbody implementations in blender?

    • @megakukis
      @megakukis 2 года назад +2

      you can easily modify rest lengths of the distance constraints every frame in the way you need (like scale them or lerp between two values)

    • @TenMinutePhysics
      @TenMinutePhysics  2 года назад +2

      One thing that works very well is to shrink the rest lengths of the distance constraints to make cloth more tightly fitting. I haven't written any simulation code in Blender yet.

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

    3:54 is confusing, is {1, 2, 4} meant to go to 2 and {1, 3, 0} to -1?

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

    is {1,2,4} supposed to have edge neighbor id '4' instead of '2' at 4:08? I'm a little bit confused...

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

      the index of the neighbor list is the global edge number, edge 0 = -1, e1 = -1, e2 = 4, e3 = -1, e4 = 2 ...., but I agree it is very confusing

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

    I am always amazed how much you can simulate in so little code!
    That said, your cloth simulator would probably not pass the cloth drape test, commonly used in the industry. Different fabrics can be characterised by draping the cloth over a circular disc and countinquantifynig the folding pattern that's created. Particularly, fabrics that stretch on the bias will be hard for your model to properly simulate, I think.
    (img80002883.weyesimg.com/uploads/www.gesterinstruments.com/images/15795049351797.jpg?imageView2/2/w/1920/q/100).