Skip to content

Instantly share code, notes, and snippets.

@paniq paniq/plan.rst Secret
Last active Mar 1, 2020

What would you like to do?

The NOWHERE devlog has moved! Go here


This comment has been minimized.

Copy link

esquellington commented Jun 10, 2015

Hi there,

Looks like a sound plan to me (I'm @ocivitf, btw).

Double-buffering is the way to go with PBD, as you only need to store current and previous positions.

4 comments/risks:

  • PBD is really stable and easy to implement, but gives you no proper "bouncing" unless you tweak it.
  • Also, the simulation is highly dependent on both the timestep (smaller timestep==>stronger material) and the number of constraint solver iterations (more iter=>stronger material), so setting good "default" values from the beginning is crucial to avoid having to re-tweak all nonphysical material parameters to keep the simulation working as indented, specially if used for gameplay purposes (PBD is mostly used for eye-candy simulation, cloth, hair, etc...)
  • If you use distance constraints along mesh edges you may find some trouble when changing the mesh topology due to edge flips, as you'll be suddenly constraining along different direction, so trajectories may change unnaturally... full strain-limit constraints may avoid this problem. This is just an intuition, I may be wrong.
  • Robust and fast tetrahedron remeshing seems a real challenge, IMHO it's the only serious risk of your plan.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.