Instantly share code, notes, and snippets.

@paniq /plan.rst Secret
Last active Sep 22, 2018

Embed
What would you like to do?
NOWHERE Devlog

The NOWHERE devlog has moved! Go here

@esquellington

This comment has been minimized.

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