5 ms·
David Li also made that one that I find pretty cool. https://www.adultswim.com/etcetera/elastic-man/ https://www.adultswim.com/etcetera/elastic-man/ I'm rathe
by afkqs 5y ago
David Li also made that one that I find pretty cool.
https://www.adultswim.com/etcetera/elastic-man/ https://www.adultswim.com/etcetera/elastic-man/
I'm rather new to shaders, would anyone know how to recreate something like this? Any useful tutorials around?
- cabernal 5y agoI'm a fan of David Li's work[0]. Most recently he created the Blob Opera[1] which builds up of a lot of his previous experiments As for recreating some of this work, you could probably start by looking at his github repos[2]. [0] http://david.li/ http://david.li/ [1] https://artsandculture.google.com/experiment/blob-opera/AAHWrq360NcGbw https://artsandculture.google.com/experiment/blob-opera/AAHW... [2] https://github.com/dli https://github.com/dli
- jonplackett 5y agoI wondered this too! It can't just be shaders to do the elasticity though right? from his tweets about it: "Low res position based dynamics thin shell + some loop subdivision" Which doesn't help me drastically.
- Jasper_ 5y agoLet's break it down: Low res thin shell means that this is a model without many vertices. The "position based dynamics" is a more modern term for what was sometimes called "verlet integration", using the positions to compute immediately velocity relative to the ideal undeformed cage. So this is our simulation model. This is still how cloth sim is done today in games. To compute the final render, Loop subdivision is used to turn the "thin shell" into a tighter model. You can Google for it, it's a way of subdividing triangles.
- lasagnaphil 5y agoPosition based dynamics is far more than just Verlet integration though. The meat of the algorithm has to do with dealing with various constraints (which is done by sequentially projecting positions related to each constraint while adhering to both the constraint and Newton’s laws (momentum conservation). PBD’s main strength is that it can incorporate various types of constraints at once with relatively simple code and good performance.
- krylon 5y agoThank you for that link, this is so much fun! I feel like a ten-year old playing with this.