Live data from Hacker News

Verlet-js - Open source dynamic body physics engine

subprotocol.com

51–57 of 57 posts

Re: Verlet-js - Open source dynamic body physics engine

#51
post #40

Earlier quoted context omitted.

Verlet is incredibly stable and allows you to update the position of a mass directly (velocity, force, momentum are all implicit), making it very easy to work with if not very accurate. You can't emulate rigid bodies very well (shape matching kinda works), collision response and stacking is a pain in the ass.

Alright, then why not do the very minor step up to Velocity-Verlet?

I don't really think it really helps with stacking.

Re: Verlet-js - Open source dynamic body physics engine

#54
post #48

Awesome. I love the spider demo, especially -- the way it sticks and everything just feels right, to the point where it's too realistic for comfort. I felt like I was messing with a real spider.

I pulled her off, and then felt awful about it. Luckily you can put her back on.

I'm not sure what about it is so effective.

Re: Verlet-js - Open source dynamic body physics engine

#55

Hi HN. I recently open sourced a verlet physics engine that I wrote for fun. Four example experiments are in there so far. I have a few other experiment ideas in mind that I hope to get implemented soon. Anyways, it was a blast creating this and thought others might like to look/play with it too. Cheers

There seems to be some numerical instability in the rotation. In the shapes demo, several of the shapes start spinning faster and faster when I pick them up. Particularly when I press the outside edge nodes into the center so that the shape sort of flips inside out, after that the shape just spins continuously when it is in the air. Another way to exhibit it is to take the center node of the wheel and press it agains…

I wrote a verlet based physics engine years ago and had similar issues. Relaxing distance constraints tended to add a bit of angular momentum in to the system. Sometimes having a drag term in the integrator was enough to compensate, but this appears to be in verlet.js already.

Another issue with defining shapes via distance constraints is that they sometimes have alternate solutions / stable minima. For example, you can smash the circle in to the ground and get it to crumple: http://i.imgur.com/UzxbKvJ.png

But, this is still an awesome demo. Good work subprotocol.

Re: Verlet-js - Open source dynamic body physics engine

#56
Awesome. This kind of well designed personal site mixing tech with demos is very appealing, because if gives you something beautiful, potentially very useful, and chewable.

Anyone knows a good "directory" or collection of such sites?

Another example of that kind of site: http://worrydream.com/

Re: Verlet-js - Open source dynamic body physics engine

#57

Earlier quoted context omitted.

I guess I'm still having trouble understanding where the complexities arise. I have no difficulty believing that they do arise, but I would like to understand how it happens if you're willing to take the time to explain. I would think that rigid bodies -- either perfectly rigid or semi-rigid via springs & struts -- would not handle all that differently in verlet since force is explicit (typo on your part?) and a v/p…

We can make semi-rigid bodies in verlet using strings are shape matching techniques, but the pressure needed to maintain shape necessarily interferes with stacking or any other kind of stable contact. Actually, their was a solution to this in a shape matching paper by Matthias [1] but I was never able to get it to work right. I've played around a lot with Verlet, it is very powerful in certain cases...especially sinc…

Cool, thanks for the link!
Post reply on HN