How Games Simulate Cloth & Ropes

  Рет қаралды 78,895

DepthBuffer

DepthBuffer

Күн бұрын

Пікірлер: 89
@charetjc
@charetjc 2 жыл бұрын
I don't know why, but your explanation of Verlet integration provided more insight into how it worked than any other source I've tried to digest. Well done.
@adrianovianawerneck472
@adrianovianawerneck472 2 жыл бұрын
The birth of a dope programming channel begins
@jeremyvirin6532
@jeremyvirin6532 2 жыл бұрын
Damn, this video is incredible, very well detailed, very well explain, the subject is very interesting,the transitions are beautiful, I love how the equations moves, keep up man, you are doing a very great job
@brandonwlee2013
@brandonwlee2013 Жыл бұрын
Dude, you need to make more videos. These are beautiful. I'm sure they're a ridiculous amount of work but they're phenomenal
@yunusoloji
@yunusoloji 2 жыл бұрын
Dude it was an amazing video. Your explanation is very clear. I felt 3blue1brown vibes :). Please create more content like this.
@o_sch
@o_sch 2 жыл бұрын
Ima go to Madison for CS so I guess I may be doing this as well Also that was the best Verlet integration explanation I have seen. It actually made it all make sense
@sheeshimsam3032
@sheeshimsam3032 2 жыл бұрын
Holy s*** I didn't understand anything, but sounds really cool to see a bunch of vectorial concepts here
@AntonioNoack
@AntonioNoack 2 жыл бұрын
I wasn't expecting the Cities XL music at the end 😄
@TheEricon
@TheEricon 2 жыл бұрын
Amazing Video! my only recommendation is to lower music a bit when ur talking. Please make more vids, very educational.
@benmcreynolds8581
@benmcreynolds8581 2 жыл бұрын
There is nothing in the world that makes games more fun than good physics. Gameplay mechanics that are physics based, with Physics effects, add so much depth to the gameplay it's not even funny. It's awesome! It's been too long lately that most games have only cared about Ray Tracing, graphics and micro transactions. It's time that games bring back the fun in video games by focusing again on the importance of physics effects in their game's. Trust me, if devs/companies care about "money/profits" well the best way is to get players to LOVE playing your game. Gamers love playing around with physics effects in gaming world's. I know at least I do.
@northernafricas3329
@northernafricas3329 2 жыл бұрын
Keep up man ... can we see some math related to design algorithms in programming logic
@tseringdhoundup2624
@tseringdhoundup2624 2 жыл бұрын
keep making video on game i love to learn more
@rickf6375
@rickf6375 2 жыл бұрын
Oh, we just talked about something similar in terms of cfd-simulation but your animations really brought this to life
@bmesa
@bmesa 2 жыл бұрын
What a great video man, please continue doing things like this!
@correiaivan
@correiaivan 2 жыл бұрын
Looking forward to more uploads
@mrshodz
@mrshodz 5 ай бұрын
Nice explanation.
@yuanyuan9852
@yuanyuan9852 2 жыл бұрын
nice vid man keep on going with this kind of content, really an eye opener.
@yante7
@yante7 Жыл бұрын
awesome vid. keep doing good work
@ZedaZ80
@ZedaZ80 2 жыл бұрын
This is such a good explanation, thanks!
@tomasgeloso
@tomasgeloso 2 жыл бұрын
What a great video, please keep it up!
@matcyb
@matcyb 2 жыл бұрын
Really great video man!
@sca4723
@sca4723 Ай бұрын
thanks man i work a lot in molecular dynamics but never seen this way, now i am curious about the velocity verlet as v(t+ 1/2 dt)=v(t)+(dt/2m)F(t) ;dt as delta t
@cleyang
@cleyang 4 ай бұрын
Thank! I had read your article 《Simulating a Rope》 and it provides an excellent and clear explanation. But there maybe is an error, possibly a writing order mistake in Figure 1.5 for procedure that uses the Euler method. Updating position first and then update velocity. 4 p.position.add(Δ𝑡 p.velocity) 5 p.velocity.add(Δ𝑡 accelerationCopy) But shouldn't we update the velocity first and then update the position?
@AJ-et3vf
@AJ-et3vf 2 жыл бұрын
Awesome video! Thank you!
@fascinating.fractals
@fascinating.fractals 2 жыл бұрын
Great video ! What tool do you use to create this video ? I mean writing the equation and animating graphs?
@depth-buffer
@depth-buffer 2 жыл бұрын
Animations are made with manim.
@uncoherentramblings2826
@uncoherentramblings2826 2 жыл бұрын
Great stuff! Hope to see more ♥️
@michaelsondei4695
@michaelsondei4695 2 жыл бұрын
Great video! Next time, it would be great to highlight variables (or parts of equations) that you're talking about.
@jerrydaboss1
@jerrydaboss1 Жыл бұрын
6:49, shouldn't f''(t) be the acceleration, not the velocity?
@sca4723
@sca4723 Ай бұрын
that's true, maybe he mean the change of velocity of the object, with 0 acceleration, the velocity is constant, so, the change of velocity of 0 acceleration makes that derivative the velocity of the object, that does not mean that 0 acceleration equals to 0 velocity, just, an n velocity as constant
@carloszavala4090
@carloszavala4090 2 жыл бұрын
Nice video, keep them coming. :)
@DaveLeCompte
@DaveLeCompte 2 жыл бұрын
The Jakobsen Hitman Physics was one of the best GDC talks I ever attended. Paper here: www.cs.cmu.edu/afs/cs/academic/class/15462-s13/www/lec_slides/Jakobsen.pdf
@poutineausyropderable7108
@poutineausyropderable7108 Жыл бұрын
6:45 f''(t) = velocity of object: No Acceleration of object: yes
@prodbyreve8660
@prodbyreve8660 2 жыл бұрын
This video is a banger omg
@drabart6121
@drabart6121 2 жыл бұрын
Great video, tho I'd make the algebra rearrangement animations a bit slower so they would be easier to make sense of
@abdousekhi4933
@abdousekhi4933 2 жыл бұрын
nice vidéo bro🙌
@S3Kglitches
@S3Kglitches 2 жыл бұрын
3:05 it's called "delta" for "difference"
@o0QuAdSh0t0o
@o0QuAdSh0t0o 2 жыл бұрын
or change
@Grigorii-j7z
@Grigorii-j7z 2 жыл бұрын
I don't understand: why are we using loop instead of moving each point single time. We move the first one and lock it's position, calculate constraint, move second one and locked it's position, go to the fird one. Basically it wouldn't matter how many points we have we just need to find and lock position for n-1 point. Am I missing something?
@depth-buffer
@depth-buffer 2 жыл бұрын
If you are simulating a rope with one fixed point, this may work. But think about a cloth where each node connects to multiple nodes, moving a node may break other constraints. It’s a little bit tricky (´▽`)
@torcher5023
@torcher5023 2 жыл бұрын
Who can explain me this: If know my force F, then I just can calculate acceleration using Newton's second law: a = F/m, then v = at and then x = vt. Why do I need any integration techniques here, Taylor series and other stuff? Complete nonsense for me.
@depth-buffer
@depth-buffer 2 жыл бұрын
When you just apply Newton‘s second law, the error will be larger than Verlet integration method.
@theLollox1000
@theLollox1000 2 жыл бұрын
you are assuming constant force, hence constant acceleration, and v =at (x=vt) Is just the result of integrating a constant!
@torcher5023
@torcher5023 2 жыл бұрын
@@theLollox1000 finally get it, thanks
@Celastrous
@Celastrous 2 жыл бұрын
One facet of this is that the normal Euler's method is a first-order approximation (AKA first order integrator). If you look up the Wikipedia page on Energy Drift, it goes into detail of how ballooning energy levels of your simulation result from the relationship between your time step length and the error in the energy of the system. Euler method leads to a energy drift proportional to Δt. Verlet integration is a second order approximation, and its error thus proportional to Δt^2 Remember that the smaller the timestep is, the more computations per second you have to do, so making Δt smaller and smaller is not easy. At a certain point it's more computational efficient to add an extra term to the position function than it is to decrease your timestep. These kinds of things pop up all the time in physics and engineering. There are even higher order physics simulations, like cubic and quartic ones used for extreme precision like simulating molecular motion for things like drug design. There are more important differences, primarily how these methods stay true to the system's Hamiltonian, but that is out of scope for this comment.
@benmcreynolds8581
@benmcreynolds8581 2 жыл бұрын
I would love to see an invention (similar to photogrammetry) but it let's game devs actually create in game physics effects based off of inputted art or video. (Example: you take a video of (insert real world situation) water droplet💧 landing in a puddle of water?)~ so then you upload that or any other representation of physical behavior, to your game engine, and the new invention could take that video or art animation and create a interpretation of code for THAT behavior and then it can basically help devs reverse engineer physics effects code from real world footage of physical behavior. (Idk if this makes any sense, or if this kind of thing would ever be possible but it pretty much would be a video game creators dream invention in my opinion.) Think of the game builds that could occur if this kind of creativity could be given to game devs. Since currently devs have to do so much tediousness to create things. This could really let the imagination go wild if something like this comes around.
@Galakyllz
@Galakyllz 2 жыл бұрын
Great video but that song at the end was a bit loud.
@depth-buffer
@depth-buffer 2 жыл бұрын
I’ll fix that in the future!
@DogeMultiverse
@DogeMultiverse 2 жыл бұрын
Ending music is too loud.
@depth-buffer
@depth-buffer 2 жыл бұрын
I’ll fix it next time!
@shitshow_1
@shitshow_1 2 жыл бұрын
Thanks for sharing : D
@correiaivan
@correiaivan 2 жыл бұрын
I was wondering if it's that way Marvelous Designer works
@DoruksWork
@DoruksWork 2 жыл бұрын
Hi i'm a student and I would like to try to implement this. Do you think python would be too slow to compute this or is it good enough.
@depth-buffer
@depth-buffer 2 жыл бұрын
If you want to implement a real-time cloth simulation, python might be slow. But if you want to render the simulation result to a video, python is OK!
@NostraDavid2
@NostraDavid2 2 жыл бұрын
Yeah, it should be fine. Computers are plenty powerful nowadays. Don't sweat python being slow, because if it is, you can find ways to make it faster.
@NostraDavid2
@NostraDavid2 2 жыл бұрын
And I say this as someone who bangs the "python is too damn slow" drum, and use it professionally every day. You're a student. You should worry about getting working code, and learning other concepts related to your courses :)
@Spedley_2142
@Spedley_2142 2 жыл бұрын
I remember 30 years ago there was a 1 line BBC Basic program called rope which simulated a rope at the mouse pointer. Has anyone got a copy?
@stenzenneznets
@stenzenneznets 2 жыл бұрын
Hi guys, I need to simulate a rope without the influence of gravity like it's resting on a plane. I need to draw it first, for example using the mouse or a graphics tablet, and then be able to pull an extremity and record the result. What kind of language should I use? There is something similar already developed? Thank you so much.
@TheRoy714
@TheRoy714 2 жыл бұрын
Awesome!
@jhanolaer8286
@jhanolaer8286 2 жыл бұрын
should fix kspring constant of each vertex to keep rest length balance.In real world of physics i always recommend spring mass simulation than verlet❤
@nberz692
@nberz692 2 жыл бұрын
Nice vid :)
@lapatatadelplato6520
@lapatatadelplato6520 2 жыл бұрын
Would it be possible to do something like Gaussian quadrature? I don’t know much about graphics, but I have used the process for arc length parametrization of a Bézier curve.
@lapatatadelplato6520
@lapatatadelplato6520 2 жыл бұрын
It worked quite well
@aneeshsrinivas9088
@aneeshsrinivas9088 2 жыл бұрын
I was thinking something like that too.
@henrycowsert3999
@henrycowsert3999 2 жыл бұрын
🎉 more more more 🎉
@yusuf_wafiy
@yusuf_wafiy 2 жыл бұрын
Damnn..1.5k subs only by 1 videos
@danwu7275
@danwu7275 2 жыл бұрын
where I can take this course?
@sediew
@sediew 2 жыл бұрын
maybe physics class was more important than i thought
@andrasgilicz8153
@andrasgilicz8153 2 жыл бұрын
Very nice 👍How you did this cool animations?
@depth-buffer
@depth-buffer 2 жыл бұрын
I use manim for these animations.
@abiuniverse
@abiuniverse 2 жыл бұрын
Can I create these graphics with intractability (with mouse/keyboard) and text in Python as well?
@depth-buffer
@depth-buffer 2 жыл бұрын
Do you mean the animation I made for the video or the cloth simulation? If you are asking about the visualization animation in the video, I made those clips with manim. I remember there’s an interactive version of manim. You may search for it on the GitHub.
@abiuniverse
@abiuniverse 2 жыл бұрын
@@depth-buffer thank you for the reply, as far as I know manim only does 2D animation and you showed the cloth simulation inside a 3D cube inside a browser window. I only know Python for now so I was wondering if all this is possible to do in python because with matplotlib animation it takes ages to even make a decent animation and yours looked so smooth, fluid and interactive.
@depth-buffer
@depth-buffer 2 жыл бұрын
@@abiuniverse manim do support 3D rendering. You can try it with python.
@abiuniverse
@abiuniverse 2 жыл бұрын
@@depth-buffer thank you
@shulehr
@shulehr 9 ай бұрын
people don't actually use springs for ropes/cloth. It's not only unstable but also unrealistic
@swamysriman7147
@swamysriman7147 Жыл бұрын
Bruh Do a video explaining the setup needed to write these engines...
@infegfx
@infegfx 2 жыл бұрын
Wow. I was thinking this. this can be different way. I can explain you my idea ifyou want. You have to add just 1 more unit formula and it can be also act like other particalsi materials and ... It will be interesting. Just 1 think I have to say. I do not know anythink about coding.
@Grayson_Wu
@Grayson_Wu 2 жыл бұрын
大佬有B站账号吗,关注一手(我看你书签栏有B站) 另外这视频有打算发B站吗,我去三连一下
@depth-buffer
@depth-buffer 2 жыл бұрын
B站同名
@klevisimeri607
@klevisimeri607 2 жыл бұрын
👍
@Pseudowaifu
@Pseudowaifu 2 жыл бұрын
Nice. Perfect?
@Pseudowaifu
@Pseudowaifu 2 жыл бұрын
Interesting, yes
@Johnny-tw5pr
@Johnny-tw5pr 2 ай бұрын
Fun fact: Euler is pronounced oiler not youler
@tj_1260
@tj_1260 2 жыл бұрын
wild
@Jkauppa
@Jkauppa 2 жыл бұрын
meh, you should say "how graphics model editors simulate clothing", game does not have to do any of that, leave that to blender to do
@emretekmen1602
@emretekmen1602 2 жыл бұрын
what school do you go to
@AMFLearning
@AMFLearning 2 жыл бұрын
#amflearningbydoing #amflearning awesome
@anthonysteinerv
@anthonysteinerv 2 жыл бұрын
How can I take your CG course?
Giving Personality to Procedural Animations using Math
15:30
t3ssel8r
Рет қаралды 2,6 МЛН
Your CPU May be FASTER than You Think
12:00
DepthBuffer
Рет қаралды 136 М.
99.9% IMPOSSIBLE
00:24
STORROR
Рет қаралды 31 МЛН
Арыстанның айқасы, Тәуіржанның шайқасы!
25:51
QosLike / ҚосЛайк / Косылайық
Рет қаралды 699 М.
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 23 МЛН
IceStarUnknown is playing undertale
1:00:14
IceStarUnknown
Рет қаралды 774
9 Years of Progress In Cloth Simulation! 🧶
7:38
Two Minute Papers
Рет қаралды 107 М.
Coding Adventure: Simulating Fluids
47:52
Sebastian Lague
Рет қаралды 2 МЛН
Reinforcement Learning - My Algorithm vs State of the Art
19:32
Pezzza's Work
Рет қаралды 142 М.
Verlet Integration
1:20:59
pikuma
Рет қаралды 28 М.
But How DO Fluid Simulations Work?
15:12
Gonkee
Рет қаралды 385 М.
Teaching myself C so I can build a particle simulation
11:52
Gradience
Рет қаралды 324 М.
How Ray Tracing (Modern CGI) Works And How To Do It 600x Faster
32:06
Josh's Channel
Рет қаралды 583 М.
Cloth Self Collision with Predictive Contacts
30:17
GDC 2025
Рет қаралды 19 М.
How to Create a Neural Network (and Train it to Identify Doodles)
54:51
Sebastian Lague
Рет қаралды 1,9 МЛН
99.9% IMPOSSIBLE
00:24
STORROR
Рет қаралды 31 МЛН